Narutocc / angular

:hear_no_evil:AngularJS lets you extend HTML vocabulary for your application. The resulting environment is extraordinarily expressive, readable, and quick to develop.
1 stars 0 forks source link

angular 数据获取后,无法及时更新到视图层 #14

Open Narutocc opened 6 years ago

Narutocc commented 6 years ago

更新$scope时,ng-repaet不刷新

情况一: 原因: angularjs以外的promise来进行数据请求,angularjs是监听不到的。 在获取到数据之后apply一下,强制刷新。

$scope.$apply();

如果用$http.get()来请求数据,就不用$apply来刷新了

情况二: 先对数组进行赋值,ng-repeat正常工作,然后对数组进行修改,ng-repeat似乎没有工作,视图没有更新。 原因是ng-repeat会已默认值排序,由于数组中的元素有重复,所以ng-repeat没有对重复的元素进行刷新,只要对ng-repeat指定track by就可以了。

<tr ng-repeat="demo in demos track by $index"></tr>

用track by $index的话,ng-repeat把$index作为key