本人是一个前端初学者,有一段时间使用vue -cli 其中遇到一些问题。
前端接收后台传回的数据,其中最常见的就是时间戳,这样就是需要我们自己转化为时间格式
所以使用New date()处理
代码如下:
<div>{{New Date(parseInt(时间戳).toLocaleString())}}</div>
浏览器显示的结果为:
但是打包成为web app 时 格式就会错误
最后在网上搜索后使用插件 moment 解决了这个问题,使用方法如下:
安装方法:`npm install moment
安装完成后在vue项目下的js文件创建js文件,添加js代码
xport function formatDate (date, fmt) {
if (/(y+)/.test(fmt)) {
fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length));
}
let o = {
'M+': date.getMonth() + 1,
'd+': date.getDate(),
'h+': date.getHours(),
'm+': date.getMinutes(),
's+': date.getSeconds()
};
for (let k in o) {
if (new RegExp(`(${k})`).test(fmt)) {
let str = o[k] + '';
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? str : padLeftZero(str));
}
}
return fmt;
};
function padLeftZero (str) {
return ('00' + str).substr(str.length);
};
在使用组件中引入import {formatDate} from "../assets/js/data"
data是我自己起的js文件名
引入后在声明
filters: {
formatDate(time) {
var date = new Date(time);
return formatDate(date, 'yyyy-MM-dd hh:mm');
}
},
然后 就可以使用了
<span>{{时间戳 | formatDate}}</span>
后打包之后就正常了,
此文章就是即自己学习记录,内容参考其他大神文章!!!!