1.在src目录下创建个filters文件夹,在里面创建个filters.js
老规矩 下载moment
npm install moment
在filters.js中写
//filters.js
import Vue from 'vue'
import moment from 'moment'
/*
全局时间格式化,使用方法 如果需要在script中格式化 this.$root.$options.filters.dataFormat(要格式化的时间,'YYYY-MM-DD')
在element中:formatter="formatTime" 在script中这么写formatTime(row,column){return this.$formatTime(row[column.property],'YYYY-MM-DD HH:mm:ss')}
在html中直接 <span>{{"要格式的时间"| dataFormat}}</span>
*/
// 时间格式化
Vue.filter('dataFormat', function (time, format) {
if (time) {
return moment(time).format(format)
}
})
function formatTime (row, column) {
const date = new Date(row)
if (!date) {
return ''
}
let filters = this.$root.$options.filters
return filters.dataFormat(date, column)
}
formatTime.install = function (Vue, options) {
Vue.prototype.$formatTime = formatTime
Vue.tools = formatTime
}
//一定要导出
export default formatTime
在main.js下直接引入
import filters from './cookie/filter'
Vue.use(filters)
需要在element中过滤的话 就这么来
在script中写个函数
formatTime (row, column) {
return this.$formatTime(row[column.property],"YYYY-MM-DD")
},
在template中调用
:formatter="formatTime"
在html中直接这么来
在html中直接 <span>{{"要格式的时间"| dataFormat}}</span>