VUE中的filters过滤器如何使用
发表于:2025-02-22 作者:千家信息网编辑
千家信息网最后更新 2025年02月22日,这篇文章主要讲解了"VUE中的filters过滤器如何使用",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"VUE中的filters过滤器如何使用"吧!前
千家信息网最后更新 2025年02月22日VUE中的filters过滤器如何使用
这篇文章主要讲解了"VUE中的filters过滤器如何使用",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"VUE中的filters过滤器如何使用"吧!
前言
Vue.js
允许我们自定义过滤器,可被用于一些常见的文本格式化。过滤器可以用在两个地方:双花括号({undefined{ }})
插值和 v-bind
表达式 (后者从 2.1.0+ 开始支持)。过滤器应该被添加在 JavaScript
表达式的尾部,由"管道"符号指示。
{{ message | capitalize }}
一、全局过滤器
定义一个全局过滤器很简单,只需要导出一个方法即可。
使用的时候很简单,只需要在入口文件全局引入此过滤器即可,使用 Vue.filter(key, value) 引入。
比如,Java后端返回的时间戳精确到秒,而JS中的时间戳是用毫秒表示,则可以定义一个转换时间戳的全局过滤器:
//main.jsimport Vue from 'vue'Vue.filter('millisecond', (value) => { if (!value) return '' value = value.toString() return value.charAt(0).toUpperCase() + value.slice(1)})
在需要使用的组件使用:
{{1516101106 | millisecond}}
1、全局过滤器之单一挂载
/** * dateTmp:要过滤的值 * fmtTmp:传入的参数,可接收多个参数 */{{ 1639998858000 | dateFormat("yyyy/MM/dd HH:mm:ss") }}Vue.filter('dateFormat', function (dateTmp, fmtTmp) { let fmt = fmtTmp let date = dateTmp if (!fmt) { fmt = 'yyyy.MM.dd' } if (!(date instanceof Date)) { date = new Date(date) } let o = { 'M+': date.getMonth() + 1, // 月份 'd+': date.getDate(), // 日 'h+': date.getHours() % 12 == 0 ? 12 : date.getHours() % 12, // 小时 'H+': date.getHours(), // 小时 'm+': date.getMinutes(), // 分 's+': date.getSeconds(), // 秒 'q+': Math.floor((date.getMonth() + 3) / 3), // 季度 'S': date.getMilliseconds() // 毫秒 } let week = { '0': '日', '1': '一', '2': '二', '3': '三', '4': '四', '5': '五', '6': '六' } if (/(y+)/.test(fmt)) { fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length)) } if (/(E+)/.test(fmt)) { fmt = fmt.replace(RegExp.$1, ((RegExp.$1.length > 1) ? (RegExp.$1.length > 2 ? '星期' : '周') : '') + week[date.getDay() + '']) } for (var k in o) { if (new RegExp('(' + k + ')').test(fmt)) { fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (('00' + o[k]).substr(('' + o[k]).length))) } } return fmt});
2、全局过滤器之批量挂载
//定义方法//filters.jsexport function slice (temp,num) { return temp.slice(0,num);}
//挂载//main.jsimport * as filters from '@/assets/js/filters'; Object.keys(filters).forEach(key => { Vue.filter(key, filters[key]);});
//调用{{ '123456' | slice(4) }}
二、组件过滤器
组件过滤器更简单,只需在对应组件中定义 filters
即可,不过只针对本组件有效。
比如定义一个首字母大写的过滤器:
//定义方法export default { filters: { capitalize: function (value) { if (!value) return '' value = value.toString() return value.charAt(0).toUpperCase() + value.slice(1) } }}
例子:
{{ msg | setSize }}
感谢各位的阅读,以上就是"VUE中的filters过滤器如何使用"的内容了,经过本文的学习后,相信大家对VUE中的filters过滤器如何使用这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
过滤器
全局
组件
方法
时间
学习
内容
参数
小时
表达式
有效
精确
两个
例子
入口
前言
只需
地方
多个
大写
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
dns服务器数据库
网络技术对口专业
稳定app软件开发外包
门禁管理服务器配置
如何打开服务器8008端口
上海ios软件开发工程
电子档案软件开发
神仙道2022折扣服务器
vba连接达梦数据库
衡水营销软件开发团队
学习网络安全需要哪些课程
长垣有哪些网络技术公司
使用流量时提示无法连接到服务器
电信网络安全运行
学网络安全做最in的it新贵
中国数据库记录
机场网络技术保障部
软件开发过程中最关键步骤
服务器2t硬盘
实时信息存入数据库
用什么软件自学网络技术
提示网络安全级别不够
dbca创建好数据库用
互联网ai新科技
企业专利数据库建设
服务器设置高并发
数据库技术解释
时间服务器 sntp
路由器wr845n服务器无响应
嵌入式服务器供电设置