Javascript OnsenUI AngularJS数据绑定工作不正常
我创建了一个我将要做的简单示例:Javascript OnsenUI AngularJS数据绑定工作不正常,javascript,angularjs,cordova,onsen-ui,2-way-object-databinding,Javascript,Angularjs,Cordova,Onsen Ui,2 Way Object Databinding,我创建了一个我将要做的简单示例: ons.bootstrap() .controller('AppController',函数($scope){ $scope.x=0; setInterval(函数(){ $scope.x=$scope.x+1; }, 500) }); 转换 此值应每500毫秒更改一次:{{x} 开关为{{开关?'on':'off'} 像这样试试 ons.bootstrap() .controller('AppController', function($scope)
ons.bootstrap()
.controller('AppController',函数($scope){
$scope.x=0;
setInterval(函数(){
$scope.x=$scope.x+1;
}, 500)
});代码>
转换
此值应每500毫秒更改一次:{{x}
开关为{{开关?'on':'off'}
像这样试试
ons.bootstrap()
.controller('AppController', function($scope) {
$scope.x = 0;
setInterval(function() {
$scope.$evalAsync(function () {
$scope.x = $scope.x + 1;
});
}, 500)
});
编辑:
或者像@Pankaj Parkar所说的那样使用$interval
。在使用$interval
之前,您应该在控制器中插入此服务
$interval(function () {
$scope.x = $scope.x + 1;
}, 500);
为什么不$interval
?我认为$evalAsync
在性能上优于$interval
,而不是$evalAsync
内置$evalAsync
。可能是@evalAsync不会更快,AFAIK$applyAsync
(angular 1.3+)会表现良好。。理想的正确解决方案是只使用$interval
。请参阅本文使用$interval
服务,而不是setInterval()
函数