vue过滤器用法实例分析


Posted in Javascript onMarch 15, 2019

本文实例讲述了vue过滤器用法。分享给大家供大家参考,具体如下:

过滤器:

vue提供过滤器:

capitalize uppercase currency....

<div id="box">
    {{msg|currency ¥}}
  </div>

debounce 配合事件,延迟执行

<div id="box">
    <input type="text" @keyup="show | debounce 2000">
  </div>

数据配合使用过滤器:

limitBy 限制几个
limitBy 参数(取几个)
limitBy 取几个 从哪开始

<div id="box">
    <ul>
      <!--取2个-->
      <li v-for="val in arr | limitBy 2">
        {{val}}
      </li>
      <br/>
      <br/>
      <!--取2个,从第arr.length-2个开始取-->
      <li v-for="val in arr | limitBy 2 arr.length-2">
        {{val}}
      </li>
    </ul>
  </div>
  <script>
    var vm=new Vue({
      data:{
        arr:[1,2,3,4,5]
      },
      methods:{
      }
    }).$mount('#box');
  </script>

filterBy 过滤数据
filterBy '谁'

<div id="box">
    <input type="text" v-model="a">
    <ul>
      <li v-for="val in arr | filterBy a">
        {{val}}
      </li>
    </ul>
  </div>
  <script>
    var vm=new Vue({
      data:{
        arr:['width','height','background','orange'],
        a:''
      },
      methods:{
      }
    }).$mount('#box');
  </script>

orderBy 排序

orderBy 谁 1/-1
1 -> 正序
2 -> 倒序

<div id="box">
    <input type="text" v-model="a">
    <ul>
      <li v-for="val in arr | orderBy -1">
        {{val}}
      </li>
    </ul>
  </div>
  <script>
    var vm=new Vue({
      data:{
        arr:['width','height','background','orange'],
        a:''
      },
      methods:{
      }
    }).$mount('#box');
  </script>

自定义过滤器: model ->过滤 -> view

Vue.filter(name,function(input){
});
<div id="box">
    {{a | toDou 1 2}}
  </div>
  <script>
    Vue.filter('toDou',function(input,a,b){
      alert(a+','+b);
      return input<10?'0'+input:''+input;
    });
    var vm=new Vue({
      data:{
        a:9
      },
      methods:{
      }
    }).$mount('#box');
  </script>

vue过滤器用法实例分析

时间转化器

<div id="box">
    {{a | date}}
  </div>
  <script>
    Vue.filter('date',function(input){
      var oDate=new Date(input);
      return oDate.getFullYear()+'-'+(oDate.getMonth()+1)+'-'+oDate.getDate()+' '+oDate.getHours()+':'+oDate.getMinutes()+':'+oDate.getSeconds();
    });
    var vm=new Vue({
      data:{
        a:Date.now()//返回1970 年 1 月 1日午夜与当前日期和时间之间的毫秒数。
      },
      methods:{
      }
    }).$mount('#box');
  </script>

过滤html标记

双向过滤器:*

Vue.filter('filterHtml',{
read:function(input){ //model-view


return input.replace(/<[^<+]>/g,'');

},

write:function(val){ //view -> model


return val;

}
});

数据 -> 视图

model -> view

view -> model

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title></title>
  <style>
  </style>
  <script src="vue.js"></script>
  <script>
    //<h2>welcome</h2>
    Vue.filter('filterHtml',{
      read:function(input){ //model-view
        alert(1);
        return input.replace(/<[^<]+>/g,'');
      },
      write:function(val){ //view -> model
        console.log(val);
        return val;
      }
    });
    window.onload=function(){
      var vm=new Vue({
        data:{
          msg:'<strong>welcome</strong>'
        }
      }).$mount('#box');
    };
  </script>
</head>
<body>
  <div id="box">
    <input type="text" v-model="msg | filterHtml">
    <br>
    {{msg | filterHtml}}
  </div>
</body>
</html>

希望本文所述对大家vue.js程序设计有所帮助。

Javascript 相关文章推荐
5秒后跳转效果(setInterval/SetTimeOut)
May 03 Javascript
JavaScript使表单中的内容显示在屏幕上的方法
Jun 29 Javascript
jquery获取img的src值的简单实例
May 17 Javascript
手机端实现Bootstrap简单图片轮播效果
Oct 13 Javascript
使用openSpeDiv方法实现Ecshop登录弹窗框效果
Mar 13 Javascript
VUE元素的隐藏和显示(v-show指令)
Jun 23 Javascript
JavaScript自执行函数和jQuery扩展方法详解
Oct 27 jQuery
vue-router配合ElementUI实现导航的实例
Feb 11 Javascript
angularJS开发注意事项
May 26 Javascript
JavaScript面试技巧之数组的一些不low操作
Mar 22 Javascript
Layui实现主窗口和Iframe层参数传递
Nov 14 Javascript
js实现盒子移动动画效果
Aug 09 Javascript
vue v-for循环重复数据无法添加问题解决方法【加track-by='索引'】
Mar 15 #Javascript
详解vue移动端项目代码拆分记录
Mar 15 #Javascript
小程序自定义单页面、全局导航栏的实现代码
Mar 15 #Javascript
使用webpack搭建vue项目实现脚手架功能
Mar 15 #Javascript
vue使用el-upload上传文件及Feign服务间传递文件的方法
Mar 15 #Javascript
详解用vue2.x版本+adminLTE开源框架搭建后台应用模版
Mar 15 #Javascript
浅谈KOA2 Restful方式路由初探
Mar 14 #Javascript
You might like
php下实现农历日历的代码
2007/03/07 PHP
php调用shell的方法
2014/11/05 PHP
laravel框架中视图的基本使用方法分析
2019/11/23 PHP
event对象的方法 兼容多浏览器
2009/06/27 Javascript
JavaScript 精粹读书笔记(1,2)
2010/02/07 Javascript
IE6 fixed的完美解决方案
2011/03/31 Javascript
jquery必须知道的一些常用特效方法及使用示例(整理)
2013/06/24 Javascript
javascript仿php的print_r函数输出json数据
2013/09/13 Javascript
使用JavaScript的AngularJS库编写hello world的方法
2015/06/23 Javascript
jQuery点击按钮弹出遮罩层且内容居中特效
2015/12/14 Javascript
JavaScript引用类型Array实例分析
2018/07/24 Javascript
es6基础学习之解构赋值
2018/12/10 Javascript
基于elementUI实现图片预览组件的示例代码
2019/03/31 Javascript
vue cli 3.0 搭建项目的图文教程
2019/05/17 Javascript
探索JavaScript中私有成员的相关知识
2019/06/13 Javascript
js 动态校验开始结束时间的实现代码
2020/05/25 Javascript
详解uniapp的全局变量实现方式
2021/01/11 Javascript
python执行get提交的方法
2015/04/29 Python
Python的Flask开发框架简单上手笔记
2015/11/16 Python
python编程嵌套函数实例代码
2018/02/11 Python
python入门前的第一课 python怎样入门
2018/03/06 Python
Python基于辗转相除法求解最大公约数的方法示例
2018/04/04 Python
pandas将numpy数组写入到csv的实例
2018/07/04 Python
使用Python获取并处理IP的类型及格式方法
2018/11/01 Python
python_opencv用线段画封闭矩形的实例
2018/12/05 Python
python pygame实现五子棋小游戏
2020/10/26 Python
python使用socket 先读取长度,在读取报文内容示例
2019/09/26 Python
利用scikitlearn画ROC曲线实例
2020/07/02 Python
Python hashlib和hmac模块使用方法解析
2020/12/08 Python
关于PySnooper 永远不要使用print进行调试的问题
2021/03/04 Python
商场活动策划方案
2014/01/24 职场文书
十八届三中全会感言
2014/03/10 职场文书
2014年小学数学教师工作总结
2014/12/03 职场文书
世界环境日活动总结
2015/02/11 职场文书
志愿者个人总结
2015/03/03 职场文书
三八节活动简报
2015/07/20 职场文书