扣丁學堂HTML5培訓之Vue項目引發(fā)過濾器使用教程
2019-03-12 13:32:23
2229瀏覽
今天扣丁學堂
HTML5培訓老師給大家分享一篇關于Vue項目引發(fā)的「過濾器」使用的相關資料,文中通過示例代碼介紹的非常詳細,下面我們一起來看一下吧。
最近在項目的開發(fā)中,出現(xiàn)一些格式化數(shù)據(jù)的情況,比如字母的大小寫,比如一些價格的數(shù)據(jù)格式。等等一些格式的顯示。
在上面的表格中,我們需要處理數(shù)據(jù)的顯示。這是我們時常遇到的情況。
通常我們會直接處理數(shù)據(jù)的輸出,可以這么做。
computed: {
result() {
return this.prices.map(price => "$" + price);
}
}
這些都是通過修改數(shù)據(jù)做到的。
不過,Vue中給我們提供了一種格式化數(shù)據(jù)功能「過濾器」。
filters與計算屬性(computed),方法(methods)不同的是,filters不會修改數(shù)據(jù),只是改變用戶看到的輸出。Vue從2.0版本之后去除了內(nèi)置的「過濾器」。所以我們在使用時需要自己去定義。
接下來,我們就來看看看在Vue中如何使用「過濾器」。
首先過濾器可以用在兩個地方:差值表達式{{}}和v-bind表達式,然后由管道操作符“|”進行指示。
知道在什么地方時候,那我們就再來看看如何定義過濾器。我們有兩種方式定義。
本地過濾器
我們可以把過濾器定義在當前使用的組件內(nèi)。我們利用過濾器來修改上面的表格輸出格式。
{{price.price | currency}}
filters: {
currency(value) {
return "$" + value;
}
}
全局過濾器
這里需要注意的是,使用全局過濾器時,必須要在Vue的實例之前。
Vue.filter("currency", function (value) {
return "$" + value;
});
new Vue({
//...
})
此時,我們就可以愉快的在組件中使用過濾器了。
用戶體驗是非常重要的一個環(huán)節(jié),我們可以利用過濾器去優(yōu)化。通常利用表格展示數(shù)據(jù)時,你無法保證每個字段的屬性值都是存在且合理的。
這時就可以利用「過濾器」。把不合理的值顯示為“--”,這是最為常見的手段。
filters: {
filterPrice(value) {
return value ? value : "--";
}
}
過濾器參數(shù)
過濾器會把表達式中的值始終當作函數(shù)的第一個參數(shù)。由于過濾器是一個函數(shù),所以我們也可以額外的傳入?yún)?shù)。
{{ data | filterPrice(arg1, arg2) }}
比如我們把上面的案例修改一下,我們不僅僅需要把美元格式化,我們還需要格式化人民幣等等,很多種的符號,這時就可以利用傳參的方式。
{{price.price | filterPrice('$')}}
filters: {
filterPrice(price, prefix) {
return prefix + price;
}
}
除此之外,「過濾器」還可以進行串聯(lián)使用。
{{ data | filterA | filterB }}
串聯(lián)使用時,會把第一個產(chǎn)生的結(jié)果,作為參數(shù)傳遞給第二個過濾器使用,以此類推。
好了今天我們Vue的過濾器就說到這,大家不妨多多嘗試下在項目中使用,提高我們的開發(fā)效率,不能總是想著去修改數(shù)據(jù),這些功能與套路有時會發(fā)揮很好的價值。
以上就是關于扣丁學堂HTML5培訓之Vue項目引發(fā)過濾器使用教程的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,
想要了解更多關于HTML5開發(fā)方面內(nèi)容的小伙伴,請關注扣丁學堂HTML5培訓官網(wǎng)、微信等平臺,扣丁學堂IT職業(yè)在線學習教育平臺為您提供權威的HTML5視頻教程供學員學習,HTML5培訓后的前景無限,行業(yè)薪資和未來的發(fā)展會越來越好的,扣丁學堂老師精心推出的HTML5視頻直播課定能讓你快速掌握HTML5從入門到精通開發(fā)實戰(zhàn)技能??鄱W堂H5技術交流群:673883249。
【關注微信公眾號獲取更多學習資料】
查看更多關于“HTML5開發(fā)技術資訊”的相關文章>>
標簽:
HTML5培訓
HTML5視頻教程
HTML5學習視頻
HTML5在線視頻
HTML5培訓班