Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/460.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用ng repeat添加包含计时器功能的项目?_Javascript_Angularjs - Fatal编程技术网

Javascript 如何使用ng repeat添加包含计时器功能的项目?

Javascript 如何使用ng repeat添加包含计时器功能的项目?,javascript,angularjs,Javascript,Angularjs,我正在尝试动态添加包含计时器的项目。目前,它仅在添加新项目时更新计时器值。 如何每秒更新每个项目的计时器值 <div ng-repeat="item in items"> ID:<label>{{item.id}}</label> </br> time:{{item.time}} </div> </div> HTML <div ng-repeat="item in

我正在尝试动态添加包含计时器的项目。目前,它仅在添加新项目时更新计时器值。
如何每秒更新每个项目的计时器值

   <div ng-repeat="item in items">
       ID:<label>{{item.id}}</label> </br>
       time:{{item.time}} 
    </div>
</div>
HTML

   <div ng-repeat="item in items">
       ID:<label>{{item.id}}</label> </br>
       time:{{item.time}} 
    </div>
</div>

您需要用
$scope.$apply.
包装计时器主体,以通知AngularJS模型已更改,并应更新视图:

   <div ng-repeat="item in items">
       ID:<label>{{item.id}}</label> </br>
       time:{{item.time}} 
    </div>
</div>
item.timer =  setInterval(function() {
   $scope.$apply(function(){
       var cur = new Date();
       item.time = (cur.getTime() - item.created);
   });
},1000); 

现在可以工作了。非常感谢!或者您可以使用提供的
$timeout
来摆脱
$scope.$apply
   <div ng-repeat="item in items">
       ID:<label>{{item.id}}</label> </br>
       time:{{item.time}} 
    </div>
</div>