vue学习笔记:2.vue过滤器
2019-01-09 11:57
337 查看
vue过滤器
1. 过滤器的语法定义 : Vue.filter(‘过滤器名称’, function() {});
注意:过滤器中的 function , 第一个参数,已经被规定死了,永远都是 过滤器 管道符前面 传递过来的数据
2. 过滤器调用时的格式 :{{ name | 过滤器名称 }}
3.全局过滤器和私有过滤器 :-过滤器调用的时候,采用的是就近原则,如果私有过滤器和全局过滤器名称一致,这时候优先调用私有过滤器
Html
<div id="app2"> <h3>{{ dt | dateFormat() }}</h3> </div>
JS
(1)定义全局过滤器
// 全局过滤器,进行时间格式化 Vue.filter('dateFormat', function(dateStr, pattern='') { // 根据给定的时间字符串,得到特定的时间 var dt = new Date(dateStr); //yyyy-mm-dd var y = (dt.getFullYear()).toString().padStart(2, '0'); var m = (dt.getMonth() + 1).toString().padStart(2, '0'); var d = dt.getDate().toString().padStart(2, '0'); // return y + '-' + m + '-' + d; if(pattern.toLowerCase() === 'yyyy-mm-dd') { return `${y}-${m}-${d}`; }else{ var hh = dt.getHours().toString().padStart(2, '0'); var mm = dt.getMinutes().toString().padStart(2, '0'); var ss = dt.getSeconds().toString().padStart(2, '0'); return `${y}-${m}-${d} ${hh}:${mm}:${ss}`; } });
(2)定义私有过滤器
var vm2 = new Vue({ el: '#app2', data: { dt: new Date() }, filters: { //定义私有过滤器 过滤器有两个条件 【过滤器名称 和 处理函数】 // 过滤器调用的时候,采用的是就近原则,如果私有过滤器和全局过滤器名称一致,这时候优先调用私有过滤器 dateFormat: function(dateStr, pattern='') { // 根据给定的时间字符串,得到特定的时间 var dt = new Date(dateStr); //yyyy-mm-dd // String.padStart(2, '0') 补 0 的方法,只能用在字符串中,如果不是字符串,用 toString() 转换 var y = dt.getFullYear(); var m = (dt.getMonth() + 1).toString().padStart(2, '0'); var d = (dt.getDate()).toString().padStart(2, '0'); // return y + '-' + m + '-' + d; if(pattern.toLowerCase() === 'yyyy-mm-dd') { return `${y}-${m}-${d}`; }else{ var hh = dt.getHours().toString().padStart(2, '0'); var mm = dt.getMinutes().toString().padStart(2, '0'); var ss = dt.getSeconds().toString().padStart(2, '0'); return `${y}-${m}-${d} ${hh}:${mm}:${ss}~~~~~~~`; } } } })
相关文章推荐
- 2.vue入门基础学习笔记-过滤器
- vue学习笔记之v-if和v-show的区别
- vue.js-学习笔记
- vue学习笔记(4)
- vue学习笔记:6.4.组件案例-评论列表
- Angularjs学习笔记——AngularJS中$filter过滤器使用(自定义过滤器)
- 关于vuex的学习实践笔记
- Vue学习笔记-3
- vue视频学习笔记01
- vue2.0 路由 学习笔记
- 【Laravel学习笔记】Laravel 5.4+Vue.js 初体验:Laravel下配置运行Vue.js
- Vue 项目基础框架学习笔记
- 【学习笔记】web程序中文乱码过滤器
- vue学习笔记之vue1.0和vue2.0的区别介绍
- 【web开发学习笔记】过滤器分析
- vue学习笔记
- Vue.js学习 Item14 – 过滤器与自定义过滤器
- Vue.js 学习笔记
- Vue学习笔记-Vue基础入门
- Vue.js学习笔记:属性绑定 v-bind