Vue的過濾器你真了解嗎
更新時間:2022年02月24日 16:54:40 作者:Tree_wws
這篇文章主要為大家詳細介紹了Vue的過濾器,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
1. 過濾器
1.1 對過濾器的理解
定義:對要顯示的數據進行特定格式化后在顯示
適用:做一些簡單的邏輯處理
特點:濾器可以做一些簡單操作,并且沒有改變原來的數據,產生新的對應的數據
? 1. 語法 : data | 過濾器
? 不傳參數默認將data值傳入,并且自動調用函數,函數可接收到value
? 傳參數并不會覆蓋掉第一個參數,第一個參數默認是value,第二個參數才是 傳入的參數
? 2. 濾器可以以串聯的形式
? data | 過濾器 | 過濾器
? 執(zhí)行的順序是將data當做參數傳入到第一個過濾器中,第一個過濾器處理完,返回的
? 值作為第二個過濾器的參數
1.2 全局過濾器:
Vue.filter(filterName, function(value){
return value.slice(0, 4);
})
new Vue({
.
..
...
})
1.3 局部過濾器:
new Vue{
filters:{
filterName(value){
return value.slice(0, 4);
}
}
}
在html中使用過濾器
<div>{{ handledata | filtername }}</div>
<div>{{ handledata | filtername(參數) }}</div>
1.4 過濾器的案例
<div id="root">
<h3>methods寫的:{{time()}}</h3>
<h3>computed寫的:{{time1}}</h3>
<h3>過濾器的寫的:{{number | ftime("YYYY-MM-DD HH:mm:ss") | qjtime}}</h3>
</div>
<div id="root2">
<hr>
<h3>{{name | qjtime}}</h3>
</div>
<script>
Vue.config.productionTip = false
// 全局過濾器
Vue.filter('qjtime', function (val) {
return val.slice(0, 4)
})
let vm = new Vue({
el: '#root',
data: {
number: Date.now()
},
methods: {
time() {
return dayjs(this.number).format("YYYY年MM月DD日 HH:mm:ss")
}
},
computed:
{
time1: {
get() {
return dayjs(this.number).format("YYYY年MM月DD日 HH:mm:ss")
}
}
},
// 局部過濾器
filters:
{
// 這是ES的語法表示如果有傳參數就使用傳進來的參數,如果沒有傳參就使用
ftime(val, str = "YYYY年MM月DD日 HH:mm:ss") {
return dayjs(val).format(str)
},
}
})
new Vue({
el: "#root2",
data: {
number: Date.now(),
name: '我是第二個Vue'
}
})
</script>
總結
以上就是今天要講的內容,本文介紹了對過濾器的一些相關知識,希望對大家有所幫助!
相關文章
vue中提示$index is not defined錯誤的解決方式
這篇文章主要介紹了vue中提示$index is not defined錯誤的解決方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-09-09
vue用Object.defineProperty手寫一個簡單的雙向綁定的示例
這篇文章主要介紹了用Object.defineProperty手寫一個簡單的雙向綁定的示例,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-07-07

