vue filter 完美时间日期格式的代码
时间:2022-01-30 11:22:20|栏目:vue|点击: 次
vue filter时间日期格式的实例代码如下所示:
<template> <div>{{msg | compFilter('yyyy-MM-dd hh:mm') }}</div> </template> <script> export default { data() { return { msg: new Date() // msg: 10, } }, filters: { compFilter: function(value, format) { let o = { "M+": value.getMonth() + 1,![图片描述][1] "d+": value.getDate(), "h+": value.getHours(), "m+": value.getMinutes(), "s+": value.getSeconds(), } if(/(y+)/.test(format)){ format = format.replace(RegExp.$1, (value.getFullYear() + "").substr(4-RegExp.$1.length)); for(let k in o) { if(new RegExp(`(${k})`).test(format)){ format = format.replace(RegExp.$1, (RegExp.$1.length == 1)?(o[k]):(("00" + o[k]).substr((""+o[k]).length))) } } return format; } } }, } </script>
知识点扩展:
vue filter方法-时间格式化
plugins/filter.js
import Vue from 'vue' // 时间格式化 // 用法:<div>{{data | dataFormat('yyyy-MM-dd hh:mm:ss')}}</div> Vue.filter('formatDate', function (value, fmt) { let getDate = new Date(value); let o = { 'M+': getDate.getMonth() + 1, 'd+': getDate.getDate(), 'h+': getDate.getHours(), 'm+': getDate.getMinutes(), 's+': getDate.getSeconds(), 'q+': Math.floor((getDate.getMonth() + 3) / 3), 'S': getDate.getMilliseconds() }; if (/(y+)/.test(fmt)) { fmt = fmt.replace(RegExp.$1, (getDate.getFullYear() + '').substr(4 - RegExp.$1.length)) } for (let 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; })
nuxt.config.js
plugins: ['@/plugins/element-ui', '@/plugins/filters.js'],
总结
栏 目:vue
本文地址:http://www.codeinn.net/misctech/191865.html