2014-02-13 63 views

回答

0

我不確定'filter:query'是什麼意思。我想這是過濾器filter

filter似乎將集合中的項目轉換爲字符串並將它們與搜索文本進行比較。 如果toString()不包含您要比較的字段,它將不匹配。

自定義過濾器可能是最好的選擇。
實施例:
angular.dart.tutorial/Chapter_07/lib/filter/category_filter.dart

1

對於filter filter指定哪些字段通過將字段名鍵到地圖以匹配AngularDart。

讓我們用AngularDart tutorialRecipe類爲例:使用字符串ctrl.nameFilterString

class Recipe { String id; String name; String category; ... } 

您可以過濾,例如,在Recipe.name

<li ng-repeat="recipe in ctrl.recipes | filter:{name:ctrl.nameFilterString}"> 

這裏是從filter API doc摘錄這解釋了filter如何解釋它的論點。即在

v | filter:x 

參數x可以是

  • Stringboolnum:只有在物品List該 直接匹配這個表達式中,與任何 值匹配此產品的地圖項目並返回包含 匹配項目的列表項。

  • Map:這定義了一個模式映射。過濾輸入列表中包含的對象的特定 屬性。例如, {name:"M", phone:"1"}謂詞將返回包含「M」屬性name和包含「1」的屬性phone 的項目列表 。可以使用特殊的屬性名稱$, (如{$: "text"})接受對該對象的任何屬性的匹配。 這相當於上面描述的String與 的簡單子字符串匹配。

相關問題