Javascript “问题越来越多”;ng repeat“;重复。

Javascript “问题越来越多”;ng repeat“;重复。,javascript,angularjs,angularjs-directive,angularjs-ng-repeat,Javascript,Angularjs,Angularjs Directive,Angularjs Ng Repeat,我已经尝试了一段时间,我不明白。 我看了文档,我认为这是我的语法 我的HTML: <div ng-controller="StoreController as store"> <div ng-repeat="item in store.items"> <img ng-src="{{item.ImageSets.ImageSet[0].SmallImage.URL}}" /> </div> </div>

我已经尝试了一段时间,我不明白。 我看了文档,我认为这是我的语法

我的HTML:

<div ng-controller="StoreController as store">
    <div ng-repeat="item in store.items">
        <img ng-src="{{item.ImageSets.ImageSet[0].SmallImage.URL}}" />
    </div>
</div>
这是我的目标

{
 "Items": {
     "Item": {...},
     "Item": {...},
     "Item": {...},
     "Item": {...}
  }
}

代码正在运行。但我只让它显示一个图像,而不是4个图像。我不熟悉angular,认为这是一个语法问题

这不是角度问题,而是JavaScript问题。 问题是,您正在尝试使用多次相同的键(
item
)构建一个对象。 因此,每次向对象添加新项目时,前一个项目都会被删除。这就是为什么您的对象只有一个项目

这样做:

var items = {
  "item": 1,
  "item": 2,
}
相当于:

var items = {};
items["item"] = 1;
items["item"] = 2; //items["item"] gets replaced and its value is now 2
相反,您应该使用包含所有项的数组。那样

{
    items: [
        {...},
        {...},
        //...
    ]
};

所以可能只为一个图像定义了
item.ImageSets.ImageSet[0].SmallImage.URL
?这是一个无效的对象。一个对象中不能有多个相同的关键点。也许你想制作一个数组?也许你应该展示真实的东西?代码本身没有任何错误,所以这是我唯一能想到的问题所在。@Juhana是正确的。ng repeat对集合进行迭代。您已将项定义为对象。。。不是收藏。尝试要迭代对象属性,JSON只有一个项,所以我不知道为什么您希望看到4?
{
    items: [
        {...},
        {...},
        //...
    ]
};