1 首先在vue项目中
npm install moment --save2. 定义时间格式化全局过滤器 在main.js中或组件中导入该组件
import moment from 'moment'3. 用法一 在全局中定义时间格式化 在main.js中引入moment
// 定义一个全局过滤器实现日期格式化 Vue.filter('datefmt', function (input, fmtstring) { return moment.unix(input).format(fmtstring) })这样就可以在我们需要对时间进行格式化的组件中进行使用了,如下:
<div> <span>{{item.publishdate | datefmt('MM/DD')}}</span> <span>{{item.publishdate | datefmt('YYYY')}}</span> </div>这里我有两个span标签,第一个是将时间戳格式为 月/日(11/24) 这样的格式,第二个则是格式化为年份值(如2018这样的)
4.用法二:
如果我们项目所需的格式都是统一格式的(例如都显示为2018-09-06),那么可以在main.js中进行统一格式样式的设置,如下:
Vue.filter('datefmt', function (input, 'YYYY-MM-DD') { return moment.unix(input).format('YYYY-MM-DD') })然后在组件中这样使用即可
<span>{{item.publishdate | datefmt}}</span>5.用法三 在vue methods方法中使用
const data = moment(时间戳).format('YYYY-MM-DD HH:mm:ss') console.log(data) // "2019-05-25 08:23:56"6 . 时间转时间戳 直接把字符串传到Date对象里他会帮你转成时间的
var timeStr1 = '2018/08/08'; var timeStr2 = '2018/12/12'; var time1 = new Date(timeStr1).getTime(); var time2 = new Date(timeStr2).getTime(); console.log(time1 ) // 1558972800000