【发布时间】:2013-12-03 11:44:00
【问题描述】:
我在列表项上使用 ng-repeat 来显示可用的超市商品。这些项目使用 $http 作为 JSON 检索并存储在 $scope.items 中,并且 ng-repeat 可以正常显示所有这些项目。我的问题是这些项目中有 20 个,我想将显示的数量限制为 3。我试图使用 limitTo 过滤器无济于事。这是一个屏幕截图,显示了显示的项目,但没有限制,尽管指定了过滤器:
http://i.imgur.com/4HiSdoG.png
我的html如下:
<span class="item-choices-choice pull-left">
<ul>
<li ng-repeat="choice in items.0 | limitTo:3">
<img src="{[{ choice.ImagePath }]}" class="img-rounded" /> {[{ choice.Name }]} <strong>{[{ choice.Price }]}</strong>
</li>
</ul>
</span>
感谢您的帮助
编辑:
我将尝试解释更多内容:我已将 {{ 重新分配给 AngularJS 中的 {[{ 否则它会与 Twig 冲突。
items 在控制器中设置为数组:
$scope.items = [];
这是我从 AJAX 请求中收到的 JSON:
此 JSON 由 $http 解释并分配给 $scope.items[0]。 AngularJS 似乎在除此之外的所有情况下都能正常工作。
【问题讨论】:
-
我们需要更多信息。显示
items.0的结构(顺便说一句。为什么属性名称这么奇怪?) -
@Stewie
items.0没有被 JavaScript 评估。 Angular 正在进行评估,并且它有效。构造/编写代码不是我的首选,但它确实有效:codepen.io/BrianGenisio/pen/uFqlm -
嗨,items 是一个数组,每个元素中包含 20 个选项。 items.0 是第一个包含相应 20 个选项的元素,items.1 会有不同的选项,以此类推。
标签: javascript angularjs