javascript - ng-toggle,添加到数组,

标签 javascript angularjs ionic-framework angularjs-scope angularjs-ng-repeat

所以我有一个项目列表,使用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/

相关文章:

javascript - jquery 颜色选择器 Spectrum 无法在 Internet Explorer 上运行

javascript - 单击链接时 AJAX 请求是否被终止?

javascript - Ionic 复选框不会对点击使用react

javascript - <ion-scroll Zooming ="true">-标签似乎不允许在模态对话框中缩放

javascript - 如何使用 JSON.parse() 的输出作为 HTML 图表数据字段的输入?

javascript - navigator.mediaDevices.getUserMedia 返回 NotReadableError : Could not start video source

angularjs - 棱 Angular 分明。如何过滤 Controller 中的动态数组?

AngularJS 与 node-webkit

javascript - 未捕获( promise )DOMException : The element has no supported sources

angular - 模板解析错误 : 'ion-col' is not a known element: