vue的過濾器一般在JavaScript 表達(dá)式的尾部,由“|”符號指示:
過濾器可以讓我們的代碼更加優(yōu)美,一般可以用在時間格式化,首字母大寫等等。
例如:{{ date | dateFormat }}這
是過濾器的寫法;{{ dateFormat(date) }}
這是函數(shù)調(diào)用的寫法
可以看出過濾器的寫法更加語義化,讓人一眼可以看出它的含義。
<!-- 在雙花括號中 -->{{ message | capitalize }}<!-- 在 `v-bind` 中 --><div v-bind:id="rawId | formatId"></div><!-- 也可以串聯(lián)多個過濾器 -->{{ message | filterA | filterB }}
// 在這個例子中,filterA 被定義為接收單個參數(shù)的過濾器函數(shù),表達(dá)式 message 的值將作為參數(shù)傳入到函數(shù)中。然后繼續(xù)調(diào)用同樣被定義為接收單個參數(shù)的過濾器函數(shù) filterB,將 filterA 的結(jié)果傳遞到 filterB 中
<!-- 過濾器接收參數(shù) -->{{ message | capitalize('string', obj) }}
// 這里的參數(shù)將在過濾器函數(shù)內(nèi)以第二個參數(shù)開始算起第一個參數(shù)為要過濾的值message,即'string'為第二個參數(shù),obj為第三個參數(shù)。
過濾器方法在接收到參數(shù)后,你可以在方法內(nèi)進(jìn)行一系列的處理,最終return出處理結(jié)果即可。
1、過濾器可以是組件內(nèi)的
filters: { capitalize: function (value) { if (!value) return '' value = value.toString() return value.charAt(0).toUpperCase() + value.slice(1) }}
2、過濾器也可以是掛載在全局Vue里
Vue.filter('capitalize', function (value) { if (!value) return '' value = value.toString() return value.charAt(0).toUpperCase() + value.slice(1)})
總結(jié)
以上所述是小編給大家介紹的vue 過濾器filter實(shí)例詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對武林網(wǎng)網(wǎng)站的支持!
新聞熱點(diǎn)
疑難解答