欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 前端技术 > vue >内容正文

vue

vue 中的el表达式_Vue中vue.filter()的使用方法介绍(过滤)

发布时间:2025/3/19 vue 60 豆豆
生活随笔 收集整理的这篇文章主要介绍了 vue 中的el表达式_Vue中vue.filter()的使用方法介绍(过滤) 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

本篇文章给大家带来的内容是关于Vue中vue.filter()的使用方法介绍(过滤),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

Vue过滤器

{{msg |msgFormat}}

Vue.filter('msgFormat',function(msg){

return msg.replace(/学习/g,'讨论');

})

var vm = new Vue({

el:'#app',

data:{

msg:"我是一个爱学习的人,学习各种技术"

}

})

使用Vue.filter()来对指定的元素进行过滤,function中传递的参数即是el表达式中的第一个值,

同时还可以传递多个参数

{{msg |msgFormat('讨论')}}

Vue.filter('msgFormat',function(msg,arg){

return msg.replace(/学习/g,arg);

})

var vm = new Vue({

el:'#app',

data:{

msg:"我是一个爱学习的人,学习各种技术"

}

})

同时可以进行多次过滤

{{msg |msgFormat('讨论')|test}}

Vue.filter('msgFormat',function(msg,arg){

return msg.replace(/学习/g,arg);

})

Vue.filter('test',function(msg){

return msg+'=====';

})

var vm = new Vue({

el:'#app',

data:{

msg:"我是一个爱学习的人,学习各种技术"

}

})

实际中经常会使用到的实例Vue.filter('dateFormat', function (dateStr, pattern = "") {

// 根据给定的时间字符串,得到特定的时间

var dt = new Date(dateStr)

// yyyy-mm-dd

var y = dt.getFullYear()

var m = dt.getMonth() + 1

var d = dt.getDate()

// return y + '-' + m + '-' + d

if (pattern.toLowerCase() === 'yyyy-mm-dd') {

return `${y}-${m}-${d}`

} else {

var hh = dt.getHours()

var mm = dt.getMinutes()

var ss = dt.getSeconds()

return `${y}-${m}-${d} ${hh}:${mm}:${ss}`

}

})

同时如果页面中存在两个Vue对象,针对每个对象可以定义私有过滤器,如下// 如何自定义一个私有的过滤器(局部)

var vm2 = new Vue({

el: '#app2',

data: {

dt: new Date()

},

methods: {},

filters: { // 定义私有过滤器 过滤器有两个 条件 【过滤器名称 和 处理函数】

// 过滤器调用的时候,采用的是就近原则,如果私有过滤器和全局过滤器名称一致了,这时候 优先调用私有过滤器

dateFormat: function (dateStr, pattern = '') {

// 根据给定的时间字符串,得到特定的时间

var dt = new Date(dateStr)

// yyyy-mm-dd

var y = dt.getFullYear()

var m = (dt.getMonth() + 1).toString().padStart(2, '0')

var d = dt.getDate().toString().padStart(2, '0')

if (pattern.toLowerCase() === 'yyyy-mm-dd') {

return `${y}-${m}-${d}`

} else {

var hh = dt.getHours().toString().padStart(2, '0')

var mm = dt.getMinutes().toString().padStart(2, '0')

var ss = dt.getSeconds().toString().padStart(2, '0')

return `${y}-${m}-${d} ${hh}:${mm}:${ss} ~~~~~~~`

}

}

},

相关推荐:

总结

以上是生活随笔为你收集整理的vue 中的el表达式_Vue中vue.filter()的使用方法介绍(过滤)的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。