vue过滤器filter的使用

使用场景:格式化内容,如:时间戳 换成 年月日;状态类型换成文字

1、实现

模拟数据

const statusList = [
  { value: '0', label: '已发货', type: 'warning' },
  { value: '1', label: '加工中', type: 'primary' },
  { value: '2', label: '加工完成', type: 'success' },
  { value: '3', label: '已收货', type: 'info' },
  { value: '4', label: '删除', type: 'danger' }
]
data(){
  return{
  	statusList
  }
}

局部过滤器

 filters: {
    stateFilter: function(value) {
      const option = statusList.find(obj => {
        return obj.value === value + ''
      })
      return option ? option.label : ''
    },
    stateColorFilter: function(value) {
      const option = statusList.find(obj => {
        return obj.value === value + ''
      })
      return option ? option.type : ''
    }
  },

全局过滤器

Vue.filter('stateFilter', (value) => {
  const option = statusList.find(obj => {
    return obj.value == value
  })
  return option ? option.label : ''
})
Vue.filter('stateColorFilter', (value) => {
  const option = statusList.find(obj => {
    return obj.value == value
  })
  return option ? option.type : ''
})

2、使用方法

<el-tag size="medium" :type="state | stateColorFilter" class="marginLeftTenSix">{{ state |stateFilter }}</el-tag>
this.$options.filters.stateFilter(this.state)           

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值