多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
[TOC] >[success] # 时间戳转换日期格式 ~~~ 工作中可能会有一种需求,后台返回时间数据是时间戳,需要前端自己来转换成自己想要的格式,然后展示在页面上, 有可能要'YYYY-MM-DD',也有可能要'YYYY/MM/DD'的格式的,所以处理后再展示。 ~~~ 这里要用到一个`JavaScript`日期处理类库[moment.js](http://momentjs.cn/docs/),这里需要涉及到vue全局方法Vue.filter,因为项目以后会有很多地方都会用到这个过滤器的方法。 ~~~ 在'src'目录下创建一个'filters'文件夹,以及'index.js'和'formatDate.js'文件 filters | |____ index.js // 引入当前文件夹所有.js过滤文件 | |____ formatDate.js // 格式化时间 // formatDate.js import Vue from 'vue' import moment from 'moment' // 日期和时间的格式化 1992/05/08 12:00:00 YYYY-MM-DD HH:mm:ss Vue.filter('dateTimeFormat', function(value, formatValue) { if (!value || !formatValue) return value value = new Date(+value).getTime() if (value) return moment(value).format(formatValue) return }) // index.js import '@/filters/formatDate' // main.js import '@/filters/index' ~~~ ~~~ 上面在src中创建了一个过滤文件,并且在过滤文件中写了一个'dateTimeFormat'过滤的方法,'value'就是过滤时候传入的 时间戳,formatValue为想要的时间格式,例如'YYYY-MM-DD',或者'YYYY/MM/DD' 页面中使用时这样写: <span>{{ lastUpdateDt | dateTimeFormat('YYYY-MM-DD') }}</span> 这样就转换成日期格式了 ~~~