在项目中会经常用到过滤器,有全局过滤器、局部过滤器,局部过滤器跟data、methods、created等同级进行操作,全局过滤器需要在main.js中全局引入注册才能使用。下面就按照步骤来一步一步实现全局过滤器:
- 新建filter文件夹,新建index.js
- 在index.js中写要执行的操作:
export function level(num) {
switch (num) {
case "0":
return "一级";
case "1":
return "二级";
case "2":
return "三级";
}
}
export function type(num) {
switch (num) {
case "0":
return "";
case "1":
return "success";
case "2":
return "danger";
}
}
import * as filters from '../src/filters/filter'
Object.keys(filters).forEach(key => {
Vue.filter(key, filters[key])
})
- 此时就可以在不同的.vue中使用定义的全局过滤器了
<template slot-scope="scope">
<el-tag :type="scope.row.level | type">{{scope.row.level | level}}</el-tag>
</template>