angularjs 有时数据不更新
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