我有一个包含项目的ng-repeat,每个项目都有一次ng-click。
<div ng-repeat="item in items">
<div ng-click="clickMe()">Show Item</div>
<div ng-show="show_item" ng-init="show_item = false>Item 1: {{item.name}}</div>
</div>
$scope.clickMe = function () {
$scope.show_item = !$scope.show_item
};
问题是我最终得到了一个包含show_item
变量的项目列表。例如,如果我最终得到10个项目的列表,并且我点击列表中的第二个项目,那么我怎样才能知道我想要显示第二个项目,而不是其中一个其他项目清单?
答案 0 :(得分:0)
您的所有商品都在共享范围变量show_item
。你必须为每个项目创建这个变量
将您的ng-show
和ng-init
更改为ng-show="item.show_item"
和ng-init="item.show_item = false"
。另外ng-click="clickMe(item)"
$scope.clickMe = function (item) {
item.show_item = !item.show_item
};