2017-04-14 75 views
0

我是angularJS的新手。我正在使用md-chips創建基於下拉選擇的芯片。對於移動視圖,我想通過點擊芯片來刪除md芯片,而不是讓用戶點擊芯片上的小'X'。如果我讓它只讀,我不能刪除芯片。任何想法讚賞。謝謝。通過點擊芯片刪除md-chips

HTML:

  <div ng-repeat="filter in sc.filters"> 
       <md-chips ng-model="filter.value" ng-if="sc.isArray(filter.value)" md-on-remove="sc.filter()"> 
        </md-chips> 
      </div> 
+0

顯示控制器代碼 – Gaurav

回答

2

您可以使用md-on-select="ctrl.remove($chip)"回調,其中$chip包含已經被點擊了NG-模式數組的元素。在remove函數中,你可以從數組中刪除該元素。根據你的例子,就是想就像如下:

$scope.remove = function($chip) { 
    var idx = self.fruitNames.indexOf($chip) 
    $scope.filters.splice(idx, 1) 
} 

一個工作小提琴可以在這裏找到:jsFiddle

+0

謝謝!奇蹟般有效 :) – nash63