平常用原生将时间戳转为正常日期,要写一大串的代码,有的时候还报错,真烦人。。。今天介绍一个插件,让你的时间戳转正常正常日期格式不成问题。。
1.首先下载安装插件moment
npm i moment
2.然后在App.vue中或者是要使用的文件中引入
var moment = require('moment');
3.使用过滤器进行过滤
存有时间戳的数组:
data(){
return{
time: ["1592223461", "1592223031", "1592222732", "1592215722"]
}
}
过滤器和moment使用进行过滤
过滤器只能用在插值中:
<div v-for="(item, index) in time" :key="index">{{item |time}}</div>
filters: {
time(item) {
let time = moment(item * 1000).format("YYYY年MM月DD日,HH时mm分SS秒");
return time;
}
},
最终转化就完成了。。。
最开始的效果的是:
之后使用过滤器过滤之后的效果为:
封装起来的话用着更加方便。
1.首先创建一个filter文件夹,在里面创建一个index.js文件
对过滤器过滤时间戳的方法进行封装
import moment from "moment";
moment.locale("zh-cn");
//处理日期
export function dateTime(v1) {
const result = moment(v1 * 1000).format("YYYY年MM月DD日,HH时mm分SS秒");
return result;
}
//处理性别
export function sex(v1) {
if (v1 == 0) {
return "男";
}
if (v1 === 1) {
return "女";
}
}
2.在main.js引入
import * as filters from './filters'
Object.keys(filters).forEach(key => {
console.log('key:',key)
Vue.filter(key,filters[key])
})
3.最后在组件中的插值里使用:
<div v-for="(item, index) in time" :key="index">{{item |dateTime}}</div>
封装起来用着更方便。。。
具体的可查阅官网:http://momentjs.cn/docs/