Vue过滤器filters如何使用

 更新时间:2023年10月19日 11:36:01   作者:悦悦猪  
Vue过滤器filters用于一些常见的文本格式化,通过过滤器可以进行处理成自己想要展示出来的格式,由“管道”符号指示,本文给大家介绍Vue过滤器filters使用方式,感兴趣的朋友一起看看吧

使用场景

用于一些常见的文本格式化。也许后端返回的数据格式并不是最终想要展示出来的,通过过滤器可以进行处理成自己想要展示出来的格式。由“管道”符号指示。

使用方式

1.双花括号插值

{{message | myFilter}}

2.v-bind表达式

<el-tag :type="message | myFilter"></el-tag>

3.vue的生命周期中,如用在methods方法中

this.$options.filters['这里是过滤器的名字']('过滤器的参数')

4.还可以接受函数作为参数

this.$options.filters['这里是过滤器的名字']('参数一', this.fun('zhangyue'))

5.过滤器可以串联,filterA的结果将被传入filterB的参数中

{{message | filterA | filterB}}

example

v-for循环渲染一个数组对象的时候 example one

const arr = [
{
	id: 1,
	name: '张张'
},
{
	id: 2,
	name: '悦悦'
}
]
<ul>
	<li v-for="item in arr" :key="item.id">{{item | myFilterA | myFilterB}}</li>
</ul>
export default {
	filters: {
		myFilterA(message) {
			return '我是' + message
		},
		myFilterB(message) {
			return message + '串联咯'
		}
	}
}

最终输出

我是张张串联咯
我是悦悦串联咯

example two

<el-table-column
  label="status"
  width="100"
>
  <template slot-scope="scope">
    <el-tag :type="scope.row.status | statusFilter">{{
      scope.row.status
    }}</el-tag>
  </template>
</el-table-column>
export default {
  filters: {
    statusFilter(status) {
      const statusMap = {
        published: 'success',
        draft: 'gray',
        deleted: 'danger'
      }
      return statusMap[status]
    }
  }
}

补充

{{message | filterA('arg1', 'arg2')}}

filterA被定义为接收3个参数的过滤器函数。message作为第一个参数,arg1作为第二个参数,arg2作为第三个参数。
以上我们所说的都是定义局部过滤器,下面看看官网所提的定义全局过滤器。
在创建vue实例之前全局定义过滤器

Vue.filter('capitalize', function (value) {
  if (!value) return ''
  value = value.toString()
  return value.charAt(0).toUpperCase() + value.slice(1)
})

new Vue({
  // ...
})

当全局过滤器和局部过滤器重名时,会采用局部过滤器。

到此这篇关于Vue过滤器filters的文章就介绍到这了,更多相关Vue过滤器filters内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Vue中的Computed实现原理分析

    Vue中的Computed实现原理分析

    这篇文章主要介绍了Vue中的Computed实现原理,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-08-08
  • VSCode搭建Vue项目的方法

    VSCode搭建Vue项目的方法

    这篇文章主要介绍了VSCode搭建Vue项目的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • Vue2.0 axios前后端登陆拦截器(实例讲解)

    Vue2.0 axios前后端登陆拦截器(实例讲解)

    下面小编就为大家带来一篇Vue2.0 axios前后端登陆拦截器(实例讲解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-10-10
  • vue中elementUI里面一些插件的使用

    vue中elementUI里面一些插件的使用

    Element UI是一套基于Vue的桌面端组件库,封装好了很多常用的UI组件,下面这篇文章主要给大家介绍了关于vue中elementUI里面一些插件的使用方法,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-06-06
  • vue使用js-audio-recorder实现录音功能

    vue使用js-audio-recorder实现录音功能

    这篇文章主要为大家详细介绍了vue如何使用js-audio-recorder实现录音功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-12-12
  • 详解vue更改头像功能实现

    详解vue更改头像功能实现

    这篇文章主要介绍了vue更改头像功能实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • Vuex的基本概念、项目搭建以及入坑点

    Vuex的基本概念、项目搭建以及入坑点

    Vuex是一个专门为Vue.js应用程序开发的状态管理模式,这篇文章主要介绍了Vuex的基本概念、项目搭建以及入坑点,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-11-11
  • 解决Vue前后端跨域问题的方式汇总

    解决Vue前后端跨域问题的方式汇总

    这篇文章主要介绍了解决Vue前后端跨域问题的多种方式,本文主要介绍借助解决Vue前后端跨域问题的几种方式,将会使用axios进行请求需要的朋友可以参考下
    2022-11-11
  • Vue表单类的父子组件数据传递示例

    Vue表单类的父子组件数据传递示例

    本篇文章主要介绍了Vue表单类的父子组件数据传递示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-05
  • Vue.js组件通信之自定义事件详解

    Vue.js组件通信之自定义事件详解

    这篇文章主要为大家详细介绍了Vue.js组件通信之自定义事件,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-10-10

最新评论