vue中过滤器filter的讲解


Posted in Javascript onJanuary 21, 2019

vue中过滤器filter的讲解

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>
<body>
  <div id="app">
    <!-- {{}}中的|表示过滤器管道符,过滤器后面的为过滤函数 -->
    <p>{{msg | msgFormat('疯狂+1')}}</p>
    <!-- 多个过滤函数进行调用 -->
    <p>{{msg | msgFormat('疯狂+1') | test}}</p>
    <h2>{{time | dateFormat}}</h2>
  </div>
</body>
<script src="./js/vue.js"></script>
<script>
  //过滤器的定义语法
  //Vue.filter('过滤器的名称',function () { })
  //过滤器中的function,第一个参数data,已经被规定死,永远都是过滤器管道符前面传递过来的数据
  // 从第二个参数开始就是传值
  // Vue.filter('过滤器名称',function(data){
  //   return data+123
  // });
  //定义一个Vue全局的过滤器,名字:msgFormat
  Vue.filter('msgFormat',function(msg,param) {
    //字符出中的replace方法,第一个参数,出了写一个字符串之外,还可以定义一个正则
    // return msg.replace('单纯','邪恶');
    // return msg.replace(/单纯/g,'邪恶')
    return msg.replace(/单纯/g,param)
  })
  Vue.filter('test',function(msg) {
    return msg+'love'
  })
  //如何定义一个私有过滤(局部)
  var vm = new Vue({
    el: '#app',
    data: {
      msg: '我也是一个单纯的少年,单纯到自己很可爱,我也会喜欢你',
      time: new Date(),
    },
    //定义私有过滤器,过滤器有两个条件[过滤器名称 和 处理函数 ]
    filters: {
      /*
      过滤器调用的时候,采用的是就近原则,
      如果私有过滤器和全局过滤器名称一致了,这时候优先调用私有过滤器
      */
      //param = '';es6的初始化值
      dateFormat: function(time,param = ''){
        var dt = new Date(time);
        // yyyy-mm-dd
        var y = dt.getFullYear();
        // var m = dt.getMonth()+1;
        var m = (dt.getMonth()+1).toString().padStart(2,'0');
        var d = dt.getDate();
        // return y+'-'+m+'-'+d;
        //模板字符串
        // return `${y}-${m}-${d}`;
        if(param.toLowerCase() === 'yyyy-mm-dd'){
          return `${y}-${m}-${d}`;
        }else{
          var hh = dt.getHours();
          var mm = (dt.getMinutes()).toString().padStart(2,'0');
          var ss = dt.getSeconds();
          return `${y}-${m}-${d} ${hh}:${mm}:${ss}`
        }
      }
    },
    methods: { }
  })
</script>
</html>
[点击并拖拽以移动]

vue中过滤器filter的讲解

vue中过滤器filter的讲解

效果图

vue中过滤器filter的讲解

vue中过滤器filter的讲解

若有不足请多多指教!希望给您带来帮助!

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

Javascript 相关文章推荐
js apply/call/caller/callee/bind使用方法与区别分析
Oct 28 Javascript
js中if语句的几种优化代码写法
Mar 12 Javascript
js中onload与onunload的使用示例
Aug 25 Javascript
JS实现table表格数据排序功能(可支持动态数据+分页效果)
May 26 Javascript
jQuery Validate插件实现表单验证
Aug 19 Javascript
轻松实现js选项卡切换效果
Sep 24 Javascript
微信小程序tabbar不显示解决办法
Jun 08 Javascript
vue中多个倒计时实现代码实例
Mar 27 Javascript
ajax跨域访问遇到的问题及解决方案
May 23 Javascript
Vue项目总结之webpack常规打包优化方案
Jun 06 Javascript
javascript定时器的简单应用示例【控制方块移动】
Jun 17 Javascript
如何在Node和浏览器控制台中打印彩色文字
Jan 09 Javascript
vue计算属性computed、事件、监听器watch的使用讲解
Jan 21 #Javascript
VUE v-model表单数据双向绑定完整示例
Jan 21 #Javascript
js中实例与对象的区别讲解
Jan 21 #Javascript
详解vue挂载到dom上会发生什么
Jan 20 #Javascript
vue-cli3 从搭建到优化的详细步骤
Jan 20 #Javascript
微信小程序实现富文本图片宽度自适应的方法
Jan 20 #Javascript
实例介绍JavaScript中多种组合继承
Jan 20 #Javascript
You might like
php class类的用法详细总结
2013/10/17 PHP
PHP的简单跳转提示的实现详解
2019/03/14 PHP
JSONP获取Twitter和Facebook文章数的具体步骤
2014/02/24 Javascript
jQuery实现的鼠标滑过弹出放大图片特效
2016/01/08 Javascript
JQuery给select添加/删除节点的实现代码
2016/04/26 Javascript
原生js封装二级城市下拉列表的实现代码
2016/06/16 Javascript
使用JavaScript获取Request中参数的值方法
2016/09/27 Javascript
原生node.js案例--前后台交互
2017/02/20 Javascript
nodejs个人博客开发第一步 准备工作
2017/04/12 NodeJs
js canvas实现适用于移动端的百分比仪表盘dashboard
2017/07/18 Javascript
详解vuex中mapState,mapGetters,mapMutations,mapActions的作用
2018/04/13 Javascript
解决vue v-for 遍历循环时key值报错的问题
2018/09/06 Javascript
vue.js实现左边导航切换右边内容
2019/10/21 Javascript
[02:22:36]《加油!DOTA》总决赛
2014/09/19 DOTA
[02:27]2018DOTA2亚洲邀请赛赛前采访-OpTic
2018/04/03 DOTA
[01:10:27]DOTA2-DPC中国联赛正赛 SAG vs XG BO3 第二场 3月5日
2021/03/11 DOTA
python实现通过shelve修改对象实例
2014/09/26 Python
Python利用带权重随机数解决抽奖和游戏爆装备问题
2016/06/16 Python
Python统计单词出现的次数
2018/04/04 Python
Python实现计算圆周率π的值到任意位的方法示例
2018/05/08 Python
深入flask之异步非堵塞实现代码示例
2018/07/31 Python
python 获取一个值在某个区间的指定倍数的值方法
2018/11/12 Python
Python寻找两个有序数组的中位数实例详解
2018/12/05 Python
python中dir()与__dict__属性的区别浅析
2018/12/10 Python
利用Python对文件夹下图片数据进行批量改名的代码实例
2019/02/21 Python
Python3内置模块pprint让打印比print更美观详解
2019/06/02 Python
django model的update时auto_now不被更新的原因及解决方式
2020/04/01 Python
收藏!10个免费高清视频素材网站!【设计、视频剪辑必备】
2021/03/18 杂记
CSS3弹性盒模型开发笔记(一)
2016/04/26 HTML / CSS
HTML5之SVG 2D入门8—文档结构及相关元素总结
2013/01/30 HTML / CSS
世界汽车零件:World Car Parts
2019/09/04 全球购物
Silk Therapeutics官网:清洁、抗衰老护肤品
2020/08/12 全球购物
促销活动方案模板
2014/02/24 职场文书
李开复演讲稿
2014/05/24 职场文书
群众路线党员自我评议范文2014
2014/09/24 职场文书
2015共产党员公开承诺书
2015/01/22 职场文书