Javascript 如何使用angular更新ng repeat中的列表?
我有一份离子清单Javascript 如何使用angular更新ng repeat中的列表?,javascript,angularjs,angularjs-ng-repeat,ionic-framework,Javascript,Angularjs,Angularjs Ng Repeat,Ionic Framework,我有一份离子清单 <ion-list> <ion-item ng-repeat="item in items"> Hello, {{item.name}}! </ion-item> </ion-list> 我想将响应附加为离子项,而不插入html,而是以某种方式将响应添加到项目中 编辑: 我尝试过:$scope.items.push(响应)但奇怪的是,我得到了未捕获的类型错误:未定义不是函数 编辑:看起来不仅仅是$scope.it
<ion-list>
<ion-item ng-repeat="item in items">
Hello, {{item.name}}!
</ion-item>
</ion-list>
我想将响应
附加为离子项
,而不插入html,而是以某种方式将响应添加到项目中
编辑:
我尝试过:$scope.items.push(响应)代码>但奇怪的是,我得到了未捕获的类型错误:未定义不是函数
编辑:看起来不仅仅是$scope.items.push(响应)代码>,但$scope.items[下一个键]=响应代码>
请参见如果itemRef是角度服务,则只需将对象添加到items数组:
$scope.items.push( response );
如果itemRef使用一些非Angular异步服务来获得响应,则需要告诉Angular事情已经更新:
$scope.$apply( function() {
$scope.items.push( response );
});
如果对$scope有问题,最好使用带点的$scope变量,例如使用$scope.data.items而不是$scope.items
有关原因的详细讨论,请参阅
我尝试过:$scope.items.push(响应)代码>但奇怪的是,我得到了未捕获的类型错误:未定义不是函数
这是因为$scope.items不是数组
对象,当您在尚未填充值之前访问它时。尝试这样做,应该可以:
if ($scope.items && $scope.items instanceof Array) {
$scope.items.push(response);
}
如果您有范围继承问题,我已经用可能的解决方案编辑了我的答案。谢谢,我已经找了一段时间了。是的,我找到了,请参阅我上次的编辑。。谢谢
if ($scope.items && $scope.items instanceof Array) {
$scope.items.push(response);
}