angularjs 有时数据不更新

2025-10-17 00:09:39

1、我们先看一下 angularjs 的scope

Scope提供$watch方法监视Model的变化。Scope提供$apply方法传播Model的变化。

平常都是自动更新,为什么还需要 $apply方法?

实际上几乎我们所有的代码都包在scope.apply()里面,像ng−click,controller的初始化,http的回调函数等。在这些情况下,我们不需要自己调用,实际上我们也不能自己调用,否则在apply()方法里面再调用apply()方法会抛出错误。

2、那我们到底什么时候需要去调用apply()方法呢?情况非常少,

如果我们需要在一个新的执行序列中运行代码时才真正需要用到它,而且当且仅当这个新的执行序列不是被angular JS的库的方法创建的,这个时候我们需要将代码用scope.apply()包起来

3、$window.onscroll = function () {

                   $scope.$apply(function(){

                    $scope.pageNo ++;

                });     

        }

$window.onscroll = function () {               

                    $scope.pageNo ++;

                    $scope.$apply();

        }

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
相关推荐
  • 阅读量:85
  • 阅读量:129
  • 阅读量:115
  • 阅读量:37
  • 阅读量:29
  • 猜你喜欢