我有一個自定義過濾器的問題,我正在努力,因爲我正在使用Angular 1.3.6,現在我無法升級,所以在這種情況下我真的需要你的幫助。自定義過濾器問題,我錯過了什麼?
如果鍵入1H過濾器返回所有以這些字符,這是真棒的聯賽,但是,如果你輸入...讓我們說:學院,過濾器返回所有sports
從College開始,但這項運動的聯賽消失了,我的過濾器在聯賽中效果很好,但是如果你嘗試找到任何一項運動,那麼他的聯賽就會消失,我不希望這樣,我希望如果通過搜索體育,過濾器必須分別返回每個運動與他們的聯賽。
我想在你通過聯賽進行搜索時保持同樣的行爲,現在真棒,我的問題只是運動。見我的代碼如下
filter.js
.filter('myFilter', function() {
return function(sports, filterBy) {
if (!sports || !filterBy) {
return sports;
}
filterBy = filterBy.toLowerCase();
return sports.filter(function(sport) {
return (sport.name.toLowerCase().indexOf(filterBy) > -1) || sport.leagues.some(function(league) {
return league.name.toLowerCase().indexOf(filterBy) > -1;
});
});
};
});
sportsLeagues.html
<div ng-repeat="sport in sportsFilter = (sports | myFilter:query)">
<strong>{{sport.name}}</strong>
<div ng-repeat="league in sport.leagues | filter: { name:query }">
<div>{{league.name}} </div>
</div>
</div>
如果刪除第二個ng-repeat中的過濾器,該怎麼辦?這是你正在尋找的行爲? http://plnkr.co/edit/UQDZ0amamy0bP1UZo9xo?p=preview – rmuller 2015-02-09 17:32:54
類似的東西,但在你的Plnkr鍵入** ncaa **,它會返回所有的聯賽和運動,包括** ncaa **,但不會移除其他像**生活投注 - NFL **和**現場投注 - 足球**聯賽** – NietzscheProgrammer 2015-02-09 17:37:13