$apply方法是怎么来解决异步的问题

<!DOCTYPE html><html><head lang="en">    <meta charset="UTF-8">    <title></title>    <script src="./js/angular-1.5.8.js"></script></head><body ng-app="mainApp" ng-controller="ngController"><input type="text" ng-model="time" style="width: 50%;">

<script>    angular.module("mainApp",[])           .controller("ngController",function($scope){//              $scope.time=new Date().toString();             setInterval(function(){                 $scope.time=new Date().toString();                 $scope.$apply();//手动的调用即可 强制刷新数据;             },100)           });//$apply()方式可以解决什么问题?//问题说明:事实上$scope与页面的数据绑定在一起的,当页面的数据发生改变的时候,$scope也会跟着改变;//当页面出现异步的情况,对 $scope 中的数据处理了, 那么 可能造成 数据无法同步的情况。

//    当出现ajax请求,它本身就是异步的(以上就是说明)//(注意点:当添加了$apply之后就time这个值就开启计时的功能,就等于实现了同步的功能,假使是没有这个值,time就没有开启计时的效果,因为是异步的原因,所以要说了$apply()的作用,是解决了异步不同步的问题,使用它来实现同步的效果)</script></body></html>
时间: 2024-09-30 14:59:36