前端之家收集整理的这篇文章主要介绍了
angulajs 中 $scope.$apply方法的作用,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
angulajs 中 $scope.$apply方法的使用
引出$apply的使用
- angular本身提供的事件方法可以正常修改页面值 因为他本身自己调用了$scope.apply方法
- 当我们通过原生JS或者第三方库修改了angularjs中的数据 angularjs监控不到 所以我们要手动通知angularjs 说 js中的数据变了 你帮我更新一下HTML吧
<body ng-app="myApp" ng-controller="demoCtrl">
{{ msg }}
<!-- <button ng-click="modify()">修改值</button> -->
<button onclick="modify()">修改值</button>
<script src="node_modules/angular/angular.js"></script>
<script>
angular.module('myApp',[])
.controller('demoCtrl',['$scope',function($scope){
$scope.msg = "我是msg";
/*$scope.modify = function(){
//angular方法可以正常修改
$scope.msg = "我是通过modify方法修改的值";
}*/
//以下两个示例是js代码,无法更新值变化,需手动更新
window.modify = function(){
$scope.msg = "我是通过原生点击事件修改的值";
// 当我们通过原生JS或者第三方库修改了angularjs中的数据 angularjs监控不到 手动更新
$scope.$apply();
}
setTimeout(function(){
// $scope.msg = "我是通过setTimeout修改的值";
// $scope.$apply();
},2000);
}])
</script>
</body>
</html>
原文链接:https://www.f2er.com/angularjs/146072.html