如何更新ng-repeat中的特定变量

时间:2014-01-07 23:21:33

标签: angularjs

我有一个包含项目的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个项目的列表,并且我点击列表中的第二个项目,那么我怎样才能知道我想要显示第二个项目,而不是其中一个其他项目清单?

1 个答案:

答案 0 :(得分:0)

您的所有商品都在共享范围变量show_item。你必须为每个项目创建这个变量  将您的ng-showng-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
};