javascript – 如何获得角材料芯片的选定芯片?

前端之家收集整理的这篇文章主要介绍了javascript – 如何获得角材料芯片的选定芯片?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
您可以通过点击它们来选择md-chips中的md-chip元素,但是我还没有找到一个很好的方法来找出在控制器中选择了哪一个.

有没有人完成这个?

<md-chips ng-model="ctrl.roFruitNames">
  <md-chip-template>
    <strong>{{$chip}}</strong>
    <em>(fruit)</em>
  </md-chip-template>
</md-chips>

http://codepen.io/anon/pen/QbOaLz

解决方法

不幸的是,就我在Angular Material的代码中看到的而言,这在md-chip的当前实现中并未公开.

您可以通过直接访问指令的控制器来解决它,但它非常脏,并且很容易打破未来版本的md-chip.

<md-chips ng-model="ctrl.roFruitNames" ng-click="ctrl.getSelectedChip($event)">

在控制器中:

self.getSelectedChipIndex = function(event) {       
  var selectedChip = angular.element(event.currentTarget).controller('mdChips').selectedChip;
  alert(selectedChip);
}

看它工作:

http://codepen.io/anon/pen/oXopQq

Angular Material已经有一个问题需要这样的东西,所以希望它将来会被添加

https://github.com/angular/material/issues/3413

[编辑]

获取芯片数据:

var ctrl = angular.element(event.currentTarget).controller('mdChips');

  if(ctrl !== undefined){
     var selectedChip = ctrl.items[ctrl.selectedChip];
  }

猜你在找的JavaScript相关文章