我想创建动态ng-reapet并在click事件上推送数组元素:
我的控制器代码是
$scope.AddlistItem = function (index) {
$scope.selecttaglist($scope.tag);
};
$scope.selecttaglist = function (tag) {
//var i=$scope.selectedTags.length;
angular.forEach($scope.selectedTags,function(tag,index){
console.log(tag.name);
$scope.selectedTagslist.push(tag);
})
并查看代码:
<ul id="boxElement" ><li ng-repeat="tag in selectedTagslist" ng-controller="ItemController" ng-bind="tag.name" ></li></ul>
Html代码
<div class="AddButtn" id="aDD{{item.name}}" ng-controller="ItemController" ng-click="AddlistItem()" ></div>
问题是当我点击链接时。数组元素正在推动所有ng-reapet元素。我希望数组只能在被点击的元素容器上推送。我不确定我的做法是做错还是做错了。我是angularjs的新手。任何人都可以提供帮助。
答案 0 :(得分:1)
如果ng-repeat
的模型相同,则需要采用不同的方法,因为模型会驱动视图,因此您需要多个
<ul id="boxElement" ><li ng-repeat="tag in selectedTagslist" ng-controller="ItemController" ng-bind="tag.name" ></li></ul>
<ul id="boxElement" ><li ng-repeat="tag in selectedTagslist2" ng-controller="ItemController" ng-bind="tag.name" ></li></ul>
带有第一个元素的副本 - angular.copy
否则该对象将通过引用连接,效果将相同
希望有意义