我以不同的方式來創建它檢查了這一點
(function() {
'use strict';
angular
.module('MyApp')
.controller('ContactChipDemoCtrl', DemoCtrl);
function DemoCtrl() {
var self = this;
self.querySearch = querySearch;
self.contacts = [];
self.filterSelected = [];
function querySearch(query) {
var results = query ?
createFilterFor(query) : [];
console.log(results)
return results;
}
self.allContacts = [{
id: '1',
name: 'Oddr Sarno'
}, {
id: '2',
name: 'Hidi Barno'
}];
var contact = [];
function createFilterFor(query) {
contact = [];
debugger
for(var i=0; i<=self.allContacts.length -1; i++){
if(self.allContacts[i].name.indexOf(query) != -1){
contact.push(self.allContacts[i]);
}
}
return contact;
}
}
})();
<div ng-controller="ContactChipDemoCtrl as ctrl" layout="column" class="chipsdemoContactChips" ng-app="MyApp">
{{ctrl.allContacts}}
<md-content class="md-padding autocomplete" layout="column">
<p>Contact Chips.</p>
<md-contact-chips
ng-model="ctrl.contacts"
md-contacts="ctrl.querySearch($query)"
md-contact-name="name"
md-contact- md-require-match=""
filter-selected="ctrl.allContacts.id"
placeholder="To">
</md-contact-chips>
</md-content>
</div>
在createFilterFor
功能我推項目僅根據搜索查詢和返回過濾器數據爲html。
ALSE中的HTML變化md-contact-name
只是name
由於這個工程。我也做了以前的工作...... –