filter 的使用 - js高阶函数
使用篇
filter的使用案例 .vue <template> <div :class="`icon-${filterLabelEn(label)}`">{{ filterLabel(label) }}</div> // 或不用导入直接用,这种方法需要在main.js 引入filter.js // main.js // import * as filters from '@/filters' // Object.keys(filters).forEach(key => { // Vue.filter(key, filters[key]) // }) // <div>{{label | filterLabel}}</div> </template> <script> import { filterLabelEn, filterLabel } from '../../filter'; export default { methods: { // 如果没有在main.js导入,可以作为一个方法来使用 filterLabelEn, filterLabel, ...otherMethods } } </script> <style lang="scss" scoped> .icon-xh { background: red; } .icon-xm { background: yellow; } </style> .filter /index.js import HandleText from '../utils/handleText.js'; export const filterLabel = value => { return HandleText.LABEL_ZH[parseInt(value)]; }; export const filterLabelEn = value => { return HandleText.LABEL_EN[parseInt(value)]; }; utils / handleText.js const HandleText = { LABEL_ZH: { 1: '小明', 2: '小红', 3: '小李', 4: '小张' }, LABEL_EN: { 1: 'xm', 2: 'xh', 3: 'xl', 4: 'xz' } }; export default HandleText;
将来的自己,会感谢现在不放弃的自己!