Javascript 带路由图和嵌套数组的角度ng重复
我使用的是Angular JS,在使用ng repeat指令与routeParams和JSON数据中的嵌套数组时遇到了问题 我有以下数据(work.json是文件名): 我有一个控制器:Javascript 带路由图和嵌套数组的角度ng重复,javascript,json,angularjs,ng-repeat,Javascript,Json,Angularjs,Ng Repeat,我使用的是Angular JS,在使用ng repeat指令与routeParams和JSON数据中的嵌套数组时遇到了问题 我有以下数据(work.json是文件名): 我有一个控制器: workControllers.controller('DetailController', ['$scope', '$http', '$routeParams', function ($scope, $http, $routeParams) { $http.get('data/work.json').suc
workControllers.controller('DetailController', ['$scope', '$http', '$routeParams',
function ($scope, $http, $routeParams) {
$http.get('data/work.json').success(function(data) {
$scope.detail = data;
$scope.whichItem = $routeParams.itemId;
});
}]);
那么这个观点呢:
<div ng-model="detail">
<h1>{{detail[whichItem].workName}}</h1>
<p>{{detail[whichItem].workDescription}}</p>
</div>
<div ng-repeat="item in detail[whichItem].workImages">
<img ng-src="{{item.id}}" />
</div>
{{detail[whichItem].workName}
{{detail[whichItem].workDescription}
第一个div中的项工作正常。第二个div中带有ng repeat的项不显示,这并不奇怪。我现在对如何实现循环有一个猜测
当使用RouteParams时,如何使用ng repeat遍历数据中的嵌套数组?ng是否重复我应该在这里使用的内容?是正确的,根据示例JSON数据,工作图像是字符串数组
<div ng-repeat="item in detail[whichItem].workImages">
<img ng-src="{{item}}" />
</div>
因此,您可以在视图中的每个细节数据绑定中省略[whichItem]
您不应该为div设置ng模型。它用于双向绑定表单输入。如果没有它,它将正常工作。item.id解析为什么?这不应该只是一件商品吗?太好了,谢谢。这些调整奏效了。我对视图中的ng repeat做了一点修改,不确定它的语法是否正确,但它起了作用:ng repeat=“item in detail.workmages track by$index”track by$index,这样数组中的每个项都是唯一的
<div ng-repeat="item in detail[whichItem].workImages">
<img ng-src="{{item}}" />
</div>
$http.get('data/work.json').success(function(data) {
$scope.detail = data[$routeParams.itemId];
});