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 相关文章推荐
Three.js源码阅读笔记(物体是如何组织的)
Dec 27 Javascript
Javascript算符的优先级介绍
Mar 20 Javascript
jquery将一个表单序列化为一个对象的方法
Jan 03 Javascript
jQuery中选择器小问题(新人难免遇到)
Mar 31 Javascript
基于JavaScript实现一定时间后去执行一个函数
Dec 14 Javascript
javascript实现根据汉字获取简拼
Sep 25 Javascript
微信公众号 摇一摇周边功能开发
Dec 08 Javascript
vue2.0 axios前后端数据处理实例代码
Jun 30 Javascript
vue-router重定向不刷新问题的解决
Jun 25 Javascript
微信小程序外卖选购页实现切换分类与数量加减功能案例
Jan 15 Javascript
jquery插件开发模式实例详解
Jul 20 jQuery
Vue 封装防刷新考试倒计时组件的实现
Jun 05 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
破解图片防盗链的代码(asp/php)测试通过
2010/07/02 PHP
解析php函数method_exists()与is_callable()的区别
2013/06/21 PHP
php轻松实现中英文混排字符串截取
2014/05/28 PHP
PHP实现根据时间戳获取周几的方法
2016/02/26 PHP
PHP基于pdo的数据库操作类【可支持mysql、sqlserver及oracle】
2018/05/21 PHP
thinkPHP框架实现的无限回复评论功能示例
2018/06/09 PHP
asp.net+js 实现无刷新上传解析csv文件的代码
2010/05/17 Javascript
IE网页js语法错误2行字符1、FF中正常的解决方法
2013/09/09 Javascript
javascript实现连续赋值
2015/08/10 Javascript
全屏js头像上传插件源码高清版
2016/03/29 Javascript
在JavaScript中对HTML进行反转义详解
2016/05/18 Javascript
深入浅析Vue组件开发
2016/11/25 Javascript
vue表单绑定实现多选框和下拉列表的实例
2017/08/12 Javascript
基于 Vue 的树形选择组件的示例代码
2017/08/18 Javascript
深入理解ES6 Promise 扩展always方法
2017/09/26 Javascript
Vue2仿淘宝实现省市区三级联动
2020/04/15 Javascript
Vue render渲染时间戳转时间,时间转时间戳及渲染进度条效果
2018/07/27 Javascript
vue安装和使用scss及sass与scss的区别详解
2018/10/15 Javascript
Vue实现boradcast和dispatch的示例
2020/11/13 Javascript
[01:10:49]Secret vs VGJ.S 2018国际邀请赛淘汰赛BO3 第二场 8.24
2018/08/25 DOTA
Python实现在线程里运行scrapy的方法
2015/04/07 Python
Python实现股市信息下载的方法
2015/06/15 Python
python使用turtle绘制分形树
2018/06/22 Python
在ubuntu16.04中将python3设置为默认的命令写法
2018/10/31 Python
Django 表单模型选择框如何使用分组
2019/05/16 Python
Python中Unittest框架的具体使用
2019/08/27 Python
Django中从mysql数据库中获取数据传到echarts方式
2020/04/07 Python
美国在线购买和出售礼品卡网站:EJ Gift Cards
2019/06/09 全球购物
医学专业大学生求职的自我评价
2013/11/27 职场文书
四年的大学生生活自我评价
2013/12/09 职场文书
大学生的网上创业计划书
2013/12/31 职场文书
设计师求职信
2014/07/01 职场文书
2014年实习班主任工作总结
2014/11/08 职场文书
告诉你创业计划书的8个实用技巧
2019/07/12 职场文书
python 爬取京东指定商品评论并进行情感分析
2021/05/27 Python
Pygame Draw绘图函数的具体使用
2021/11/17 Python