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 相关文章推荐
为Extjs加加速(javascript加速)
Aug 19 Javascript
高亮显示web页表格行的javascript代码
Nov 19 Javascript
JS 面向对象之神奇的prototype
Feb 26 Javascript
js实现瀑布流的一种简单方法实例分享
Nov 04 Javascript
Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结
Nov 14 Javascript
基于javascript滚动图片具体实现
Nov 18 Javascript
JS获取屏幕,浏览器窗口大小,网页高度宽度(实现代码)
Dec 17 Javascript
详解JS中的快速排序与冒泡
Jan 10 Javascript
BootStrap实现文件上传并带有进度条效果
Sep 11 Javascript
javascript获取图片的top N主色值方法详解
Jan 26 Javascript
js实现文件上传功能 后台使用MultipartFile
Sep 08 Javascript
layui自己添加图片按钮并点击跳转页面的例子
Sep 14 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
上海地方志办公室-上海电子仪表工业志
2021/03/04 无线电
PHP中显示格式化的用户输入
2006/10/09 PHP
php数据库备份还原类分享
2014/03/20 PHP
TP(thinkPHP)框架多层控制器和多级控制器的使用示例
2018/06/13 PHP
JavaScript弹簧振子超简洁版 完全符合能量守恒,胡克定理
2009/10/25 Javascript
正则表达式搭配js轻松处理json文本方便而老古
2013/02/17 Javascript
JS实现距离上次刷新已过多少秒示例
2014/05/23 Javascript
jQuery跨域问题解决方案
2015/08/03 Javascript
常用的js验证和数据处理总结
2016/08/02 Javascript
TypeScript入门-接口
2017/03/30 Javascript
微信小程序 rich-text的使用方法
2017/08/04 Javascript
elementui的默认样式修改方法
2018/02/23 Javascript
Vue 中使用 CSS Modules优雅方法
2018/04/09 Javascript
vue基础之事件简写、事件对象、冒泡、默认行为、键盘事件实例分析
2019/03/11 Javascript
微信小程序城市选择及搜索功能的方法
2019/03/22 Javascript
微信小程序云函数使用mysql数据库过程详解
2019/08/07 Javascript
Vue登录拦截 登录后继续跳转指定页面的操作
2020/08/04 Javascript
Python3.0与2.X版本的区别实例分析
2014/08/25 Python
Python复制目录结构脚本代码分享
2015/03/06 Python
Django使用httpresponse返回用户头像实例代码
2018/01/26 Python
Python文本处理之按行处理大文件的方法
2018/04/09 Python
基于pycharm导入模块显示不存在的解决方法
2018/10/13 Python
Django多数据库的实现过程详解
2019/08/01 Python
python程序文件扩展名知识点详解
2020/02/27 Python
Python中zipfile压缩文件模块的基本使用教程
2020/06/14 Python
html5表单及新增的改良元素详解
2016/06/07 HTML / CSS
巴西最大的在线约会网站:ParPerfeito
2018/07/11 全球购物
Notino罗马尼亚网站:购买香水和化妆品
2019/07/20 全球购物
be2台湾单身男女交友:全球网路婚姻介绍的领导品牌
2019/10/11 全球购物
Chinti & Parker官网:奢华羊绒女装和创新针织设计
2021/01/01 全球购物
酒店服务实习自我鉴定
2013/09/22 职场文书
大一新生军训时的自我评价分享
2013/12/05 职场文书
五一活动标语
2014/06/30 职场文书
感谢信怎么写
2015/01/21 职场文书
读《推着妈妈去旅行》有感1500字
2019/10/15 职场文书
从原生JavaScript到React深入理解
2022/07/23 Javascript