【猿说VUE】Vue过滤器使用介绍(劳动节致敬)
12 VUE基础:过滤器
Vue
允许你自定义过滤器,可被用于一些常见的文本格式化。过滤器可以用在两个地方:双花括号插值和 v-bind
表达式 (后者从 2.1.0+ 开始支持)。过滤器应该被添加在 JavaScript 表达式的尾部,由“管道”符号指示。
<!-- 在双花括号中 -->
{{ message | capitalize }}<!-- 在 `v-bind` 中 -->
<div v-bind:id="rawId | formatId"></div>
你可以在一个组件的选项中定义本地的过滤器:
filters: {capitalize: function (value) {if (!value) return ''value = value.toString()return value.charAt(0).toUpperCase() + value.slice(1)}
}
或者在创建 Vue 实例之前全局定义过滤器:
Vue.filter('capitalize', function (value) {if (!value) return ''value = value.toString()return value.charAt(0).toUpperCase() + value.slice(1)
})new Vue({// ...
})
当全局过滤器和局部过滤器重名时,会采用局部过滤器。
过滤器函数总接收表达式的值 (之前的操作链的结果) 作为第一个参数。在上述例子中,capitalize
过滤器函数将会收到 message
的值作为第一个参数。
过滤器可以串联:
{{ message | filterA | filterB }}
在这个例子中,filterA
被定义为接收单个参数的过滤器函数,表达式 message
的值将作为参数传入到函数中。然后继续调用同样被定义为接收单个参数的过滤器函数 filterB
,将 filterA
的结果传递到 filterB
中。
过滤器是 JavaScript 函数,因此可以接收参数:
{{ message | filterA('arg1', arg2) }}
这里,filterA
被定义为接收三个参数的过滤器函数。其中 message
的值作为第一个参数,普通字符串 'arg1'
作为第二个参数,表达式 arg2
的值作为第三个参数。
12.1 引入第三方库作为过滤器的助攻
Moment.js 是一个 JavaScript 日期处理类库,用于解析、检验、操作、以及显示日期。上面的例子中我们引入第三方库,看看怎么使用。
引入对应的JS文件
自定义过滤器
使用Moment的格式化函数
<!DOCTYPE html>
<html><head><meta charset="UTF-8"><title>VUE之过滤器</title></head><body><div id="app"><h2>显示格式化的日期时间</h2><p>默认显示:{{showTime}}</p><p>最完整的: {{showTime | formatDateLocal}}</p><p>Moment格式化年月日: {{showTime | dateFormatS()}}</p></div><script type="text/javascript" src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script><script type="text/javascript" src="https://cdn.bootcss.com/moment.js/2.21.0/moment.js"></script><script type="text/javascript">// 定义过滤器Vue.filter('dateFormatS', function (value, format='YYYY-MM-DD HH:mm:ss') {return moment(value).format(format);})const vm = new Vue({el: "#app",data: {showTime: new Date()},filters: {formatDateLocal(strDate){// 进行日期格式转换let date = new Date(strDate);let y = date.getFullYear();let MM = date.getMonth() + 1;MM = MM < 10 ? ('0' + MM) : MM;let d = date.getDate();d = d < 10 ? ('0' + d) : d;let h = date.getHours();h = h < 10 ? ('0' + h) : h;let m = date.getMinutes();m = m < 10 ? ('0' + m) : m;let s = date.getSeconds();s = s < 10 ? ('0' + s) : s;return y + '-' + MM + '-' + d + ' ' + h + ':' + m + ':' + s;}}})</script></body>
</html>
【猿说VUE】Vue过滤器使用介绍(劳动节致敬)相关推荐
- vue使用,及指令介绍,计算属性/过滤器
目录 Vue是什么 vue的单页面原理 Vue的使用 指令介绍: v-if和 v-show的区别 v-on 事件绑定: v-bind 绑定属性 处理数组绑定 v-model双向数据绑定 created ...
- vue filters过滤器与字典项
vue filters过滤器与字典项 功能介绍: 大致需求: 具体实现: 一.过滤器js文件: 二.引入并使用: 功能介绍: 在项目开发中,会遇到后台返回值为数字.字母等格式数据,具体显示则需根据字典 ...
- 基于Vue的Quasar Framework 介绍 这个框架UI组件很全面
基于Vue的Quasar Framework 介绍 这个框架UI组件很全面 基于Vue的Quasar Framework 中文网 http://www.quasarchs.com/ quasarfra ...
- methods vue 使用过滤器_Vue.js中过滤器(filter)的使用
Vue.js 过滤器的基本使用(filter) vue中的过滤器分为两种:局部过滤器和全局过滤器 1.定义无参全局过滤器 Vue.filter('msgFormat', function(msg) { ...
- vue+filter过滤器(多参数)传参 - 代码篇
vue+filter过滤器(多参数)传参 - 代码篇 传1个参数 //html {{a1 | filterAa}} //js filters:{filterAa(a1){// a1是传入的参数} } ...
- Vue的过滤器,生命周期的钩子函数和使用Vue-router
一.过滤器 1.局部过滤器 在当前组件内部使用过滤器 给某些数据 添油加醋 //声明 filters:{'过滤器的名字':function(val,a,b){//a 就是alax ,val就是当前的数 ...
- vue 简介 (MVVM介绍,超详细)
目录 vue 简介 1. 什么是 vue 1.1 解读核心关键词:构建用户界面 1.2 构建用户界面的传统方式 1.3 使用 vue 构建用户界面 1.4 解读核心关键词:框架 1.5 总结:什么是 ...
- vue中过滤器filters的this指向问题。
今天在完成一个时间戳转化时想试试vue的过滤器filters,代码如下: execute_time(time) {if (time === 0) return '/'else return this. ...
- methods vue过滤器 和_Vue 2.0的学习笔记:Vue的过滤器
在这篇文章里,我们将讨论一个叫过滤器的东西.过滤器提供了一种执行文本转换的方法,比如说都转成大写字母或者几乎做任何我们想做的事情.过滤器既可以在文本插值中使用,也可以在v-bind指令的表达式中使用. ...
最新文章
- 波士顿动力机器狗半夜遛弯儿惊呆路人,还配合拍照,网友:想到了《黑镜》...
- 如何开启Windows 10隐藏的锁屏时间设置项
- 逻辑回归模型详解(Logistic Regression)
- 将Notepad++配置成Java轻量级的IDE
- Markdown写作入门
- python中yaml模块的使用_详解Python yaml模块
- PTA--03-树2 List Leaves
- Oracle 9i安装时没有找到OCS4J.properties 解决办法
- erp框架 saas_2020管理软件:分析saas系统与erp系统之间的区别
- UE4特效系列笔记①
- Linux下 文件或文件夹的复制(拷贝 cp)
- win7计算机不在桌面了,怎么办Win7系统开机后不显示桌面
- 关于stm32单片机的通讯方式
- 【初学者入门C语言】之习题篇(一)
- Jenkins使用时,报No valid crumb was included in the request的解决方法
- 陌陌八成营收靠直播 直播行业已进入两极分化
- DQN笔记:高估问题 target network Double DQN
- 万能码,你的启明星(安全扫码专业委员会)
- IBM SPSS的Sav文件读/写
- 新增网络与信息安全​专硕!优秀双非重庆邮电大学
热门文章
- 2022-2027年中国科技地产行业发展监测及投资战略研究报告
- 跨境电商APP解决方案
- 数独问题每行每列每3X3
- solr定时实时重建索引和增量更新——sxt
- php 汉王云名片_风吹雨名片互赞系统PHP程序
- 【内网渗透】域横向PTHPTKPTT哈希票据传递
- python 转换数字为中文的大写
- 无法出现 Bandizip 的右键菜单
- Python:nii格式的核磁共振图像(MRI)的读取、处理、显示操作(以缩放操作举例)
- 我的世界java村民繁殖_教程/村民养殖 - Minecraft Wiki,最详细的官方我的世界百科...