所以我有一个项目列表,使用ng-repeat
。所有项目都有一个像 {{item.id}}
一样可访问的 id,当我切换该特定项目时,我想将该项目 id 推送到数组中。我已经尝试了很多事情,但总是出现未定义
。
以下是我尝试过的当前代码。谢谢。
模板:
<ion-list>
<ion-toggle toggle-class="toggleClass"
ng-repeat="item in items"
ng-model="item.checked"
ng-change="updateTracker({{item.id}});"> <!--item.id didnt work either -->
<span>{{item.name}}</span> <!--{{item.id}} this works -->
</ion-toggle>
</ion-list>
Controller :
$scope.trackerList = [];
console.log($scope.trackerList);
$scope.addTrack = function() {
$scope.trackerList.push(item.id); //undefined
};
$scope.updateTracker = function(item) {
console.log($scope.item.id)
}
编辑:
$scope.updateTracker = function(item) {
console.log(item.id + "was added");
$scope.trackerList.push(item.id); // only adds. would like to remove if toggle off
console.log($scope.trackerList)
}
谢谢developer033
最佳答案
ngChange
指令需要一个表达式
,因此您应该这样编写:
ng-change="updateTracker(item.id)"
编辑:
由于您希望在 controller
中出现一个 item
,请将其更改为:
ng-change="updateTracker(item)"
$scope.updateTracker = function(item) {
console.log(item.id)
}
关于javascript - ng-toggle,添加到数组,,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38809456/