過濾器顧名思義就是需要將后端傳過來的數據 “過濾”一哈顯示在網頁上
場景一:后端傳的時間:2019-11-19T04:32:46Z
前端顯示在頁面上肯定要處理(過濾)
filters: {
format(
val) {
return
moment(
val).
format(
"YYYY-MM-DD HH:SS");
}
},
methods:{ },
在頁面中調用 format
<
div
>{{
this.
detailList.
update_time|
format}}
</
div
>
說明:this.detailList.update_time是參數。
總結:filters里面的函數會調用兩次,一次是在mounted之前,傳值undefined,頁面顯示當前時間。另一次是在mounted之后,傳值2019-11-19T04:32:46Z,顯示處理過的時間。
所以在頁面上會看到時間一下子就渲染了,比其他數據快。過了1秒后,數據會更新為需要的時間。
場景二:后端一次傳來相互關聯兩個數組,前端需要自己el-select對應的數據
methods:{
//change所屬服務 獲得事件類型
serviceChange(
selected) {
const
filter =
this.
$options.
filters[
"serviceChange"];
const
data =
filter(
selected);
},
},
filters:{
serviceChange(
selected){
... ...
},
},
總結:除了在模板中使用filters,在methods中也可以使用filters中的過濾器,