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过滤器filters使用详解

jQuery中$.grep() 过滤函数 数组过滤

实例详解vue自定义过滤器创建和使用方法

以上就是Vue中vue.filter()的使用方法介绍(过滤)的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2743369.html

(0)
上一篇 2025年3月8日 03:03:55
下一篇 2025年3月8日 03:04:06

AD推荐 黄金广告位招租... 更多推荐

相关推荐

发表回复

登录后才能评论