這次給大家帶來filter使用案例總結,使用filter的注意事項有哪些,下面就是實戰案例,一起來看一下。愛掏網 - it200.com
1、自定義的過濾器,當然這包括注冊在全局和注冊在實例化的內部
(1)注冊在全局的fliter
(1)全局方法 Vue.filter() 注冊一個自定義過濾器,必須放在Vue實例化前面
(2) 過濾器函數始終以表達式的值作為第一個參數。愛掏網 - it200.com帶引號的參數視為字符串,而不帶引號的參數按表達式計算
(3)可以設置兩個過濾器參數,前提是這兩個過濾器處理的不沖突
(4)用戶從input輸入的數據在回傳到model之前也可以先處理
?? ???? ????登錄后復制vue自定義過濾器 ???? ???? ?? ?? ??????????
{{message?|?sum}}
??????{{message?|?cal?10?20}}
? ??????{{message?|?sum?|?currency?}}
? ??????? ???? ???? ??
filter是默認會傳入當前的item,而且filter的第一個參數默認就是當前的item。愛掏網 - it200.com
(2)注冊在實例化內部
上面的例子直接注冊在Vue全局上面,其他不用這個過濾器的實例也會被迫接受,其實過濾器可以注冊在實例內部,僅在使用它的實例里面注冊
?上面的程序改寫為:
?? ???? ????登錄后復制vue自定義過濾器 ???? ???? ?? ?? ??????????
{{message?|?sum}}
??????{{message?|?cal?10?20}}
? ??????{{message?|?sum?|?currency?}}
? ??????? ???? ???? ??
2、使用js中的迭代函數filter
?
(1)實例一原文
var?app5?=?new?Vue({ ??el:?'#app5', ??data:?{ ????shoppingList:?[ ??????"Milk",?"Donuts",?"Cookies",?"Chocolate",?"Peanut?Butter",?"Pepto?Bismol",?"Pepto?Bismol?(Chocolate?flavor)",?"Pepto?Bismol?(Cookie?flavor)" ????], ????key:?"" ??}, ??computed:?{ ????filterShoppingList:?function?()?{ ??????//?`this`?points?to?the?vm?instance ??????var?key?=?this.key; ??????var?shoppingList?=?this.shoppingList; ??????//在使用filter時需要注意的是,前面調用的是需要使用filter的數組,而給filter函數傳入的是數組中的每個item,也就是說filter里面的函數,是每個item要去做的,并將每個結果返回。愛掏網 - it200.com ??????return?shoppingList.filter(function?(item)?{ ????????return?item.toLowerCase().indexOf(key.toLowerCase())?!=?-1 ??????});; ????} ??} }) ?
-
??Filter?Key??
????
- ??????{{?item?}} ???? ??
最終效果實現了根據關鍵字來過濾列表的功能。愛掏網 - it200.com
?
?其他的一些Js 迭代方法——filter()、map()、some()、every()、forEach()、lastIndexOf()、indexOf()
相信看了本文案例你已經掌握了方法,更多精彩請關注愛掏網 - it200.com其它相關文章!
推薦閱讀:
如何獲取dom內class的值
實戰項目編譯后不在根目錄怎么辦
以上就是filter使用案例總結的詳細內容,更多請關注愛掏網 - it200.com其它相關文章!