vue通过过滤器实现数据格式化


Posted in Javascript onJuly 20, 2020

一、本节说明

在使用插值表达式的时候,我们通常会有一种需求,就是将数据进行二次的格式化。VUE的过滤器的实现参考了linux的shell命令的管道的实现原理:即上一个命令的输出,是下一个命令的输入。
所以过滤器可以串接使用:{{数据 | 过滤器A | 过滤器B}}

除了在插值表达式中可以使用过滤器,在后文中将要学习到的v-bind指令中也可以使用过滤器。用法是一致的,到时候我们再看一看。

二、 怎么做

全局过滤器(定义一个用于做日期格式化的过滤器)

vue通过过滤器实现数据格式化

  • 过滤器的第一个参数是固定的,就是输入的数据。对于{{message|date-format('yyyy-mm-dd')}}而言,参数input=message,即“|”管道符之前的数据输出,作为过滤器的输入数据。
  • 过滤器除了第一个参数固定是“管道输出”,其他的参数根据需要自定义。在传参的时候,从第二个参数开始传入即可。{{message|date-format(message,'yyyy-mm-dd')}}写法是错误的。
  • 其中let是ES6中定义变量的语法,类似于var,但在块作用域方面有不同之处。可以自行搜索深入学习
  • 在上文代码中使用了 template string语法,使用该语法可以有效的解决,字符串与变量繁琐的拼接问题。“`”这个字符是键盘在英文输入法环境中,ESC下方的那个按键。
  • 在template string语法中,变量用${变量名}括起来。这个用法也是参考了linux的shell脚本的实现。
  • 使用ES6中的字符串新方法String.prototype.padStart(maxLength, fillString='') String.prototype.padEnd(maxLength, fillString='')来填充字符串;padStart(2,'0')表示如果字符串长度不足2位,则左补0,补足到长度为2.

三、 效果

过滤器的使用方法:

{{message}}
{{message|date-format('yyyy-mm-dd')}}

浏览器显示的效果:

vue通过过滤器实现数据格式化

四、 深入:私有过滤器

除了可以定义全局的过滤器,我们还可以定义私有过滤器。但是过滤器这种代码,类似于工具类,我们一般定义为全局的,让它在各个模块、组件里面都可以使用。

vue通过过滤器实现数据格式化

注意:当有局部和全局两个名称相同的过滤器时候,会以就近原则进行调用,即:局部过滤器优先于全局过滤器被调用!

以上就是vue通过过滤器实现数据格式化的详细内容,更多关于vue实现数据格式化的资料请关注三水点靠木其它相关文章!

Javascript 相关文章推荐
jquery命令汇总,方便使用jquery的朋友
Jun 26 Javascript
为指定的元素添加遮罩层的示例代码
Jan 15 Javascript
thinkphp中常用的系统常量和系统变量
Mar 05 Javascript
Node.js事件循环(Event Loop)和线程池详解
Jan 28 Javascript
json+jQuery实现的无限级树形菜单效果代码
Aug 27 Javascript
jQuery 常用代码集锦(必看篇)
May 16 Javascript
vue+ElementUI实现订单页动态添加产品数据效果实例代码
Jul 13 Javascript
使用AngularJS编写多选按钮选中时触发指定方法的指令代码详解
Jul 24 Javascript
JavaScript的setter与getter方法
Nov 29 Javascript
详解Node.js模板引擎Jade入门
Jan 19 Javascript
解决vue中使用swiper插件问题及swiper在vue中的用法
Apr 04 Javascript
微信小程序自定义顶部组件customHeader的示例代码
Jun 03 Javascript
原生JavaScript写出Tabs标签页的实例代码
Jul 20 #Javascript
解决echarts 一条柱状图显示两个值,类似进度条的问题
Jul 20 #Javascript
简单了解前端渐进式框架VUE
Jul 20 #Javascript
基于VSCode调试网页JavaScript代码过程详解
Jul 20 #Javascript
一文读懂vue动态属性数据绑定(v-bind指令)
Jul 20 #Javascript
在Vue 中实现循环渲染多个相同echarts图表
Jul 20 #Javascript
解决echarts数据二次渲染不成功的问题
Jul 20 #Javascript
You might like
Zend Framework教程之Zend_Db_Table表关联实例详解
2016/03/23 PHP
php使用ffmpeg获取视频信息并截图的实现方法
2016/05/03 PHP
JQuery 写的个性导航菜单
2009/12/24 Javascript
JQuery的ajax获取数据后的处理总结(html,xml,json)
2010/07/14 Javascript
extjs 3.31 TreeGrid实现静态页面加载json到TreeGrid里面
2013/04/02 Javascript
纯JavaScript实现HTML5 Canvas六种特效滤镜示例
2013/06/28 Javascript
JavaScript操作HTML元素和样式的方法详解
2015/10/21 Javascript
AngularJS中的DOM操作用法分析
2016/11/04 Javascript
基于jQuery制作小图标上下滑动特效
2017/01/18 Javascript
javascript 网页进度条简单实例
2017/02/22 Javascript
深入理解Angularjs中$http.post与$.post
2017/05/19 Javascript
微信小程序实现给嵌套template模板传递数据的方式总结
2017/12/18 Javascript
JavaScript学习教程之cookie与webstorage
2019/06/23 Javascript
使用layui监听器监听select下拉框,事件绑定不成功的解决方法
2019/09/28 Javascript
vue实践---vue不依赖外部资源实现简单多语操作
2020/09/21 Javascript
vue+vant实现购物车全选和反选功能
2020/11/17 Vue.js
零基础写python爬虫之HTTP异常处理
2014/11/05 Python
Python函数式编程指南(二):从函数开始
2015/06/24 Python
Python实现将目录中TXT合并成一个大TXT文件的方法
2015/07/15 Python
基于Python实现对PDF文件的OCR识别
2016/08/05 Python
python 开发的三种运行模式详细介绍
2017/01/18 Python
离线安装Pyecharts的步骤以及依赖包流程
2020/04/23 Python
python itchat实现微信自动回复的示例代码
2017/08/14 Python
Django框架之中间件MiddleWare的实现
2019/12/30 Python
tensorflow 获取所有variable或tensor的name示例
2020/01/04 Python
解析Tensorflow之MNIST的使用
2020/06/30 Python
使用python实现学生信息管理系统
2021/02/25 Python
HTML5新特性之语义化标签
2017/10/31 HTML / CSS
荷兰电脑专场:Paradigit
2018/05/05 全球购物
俄罗斯香水在线商店:AromaCode
2019/12/04 全球购物
大专计算机个人求职的自我评价
2013/10/21 职场文书
省级四好少年事迹材料
2014/01/25 职场文书
对教师的评语
2014/04/28 职场文书
环保志愿者活动总结
2014/06/27 职场文书
2015年暑期实践报告范文
2015/07/13 职场文书
2016三严三实专题教育活动心得体会
2016/01/06 职场文书