本人最近正在学习uni-app,学习到一个格式化时间日期格式的方法,分享给大家:
创建一个div显示时间
<div id="app">
<div id="date">
{{myDate | format('yyyy-MM-dd hh:mm:ss') }}
</div>
</div>
创建一个过滤器传入格式进行过滤并返回对应的时间
Vue.filter('format',function(value,arg){
return dateFormat(value,arg);
});
重点函数:
function dateFormat(date,format){
if(typeof date == "string"){
var mts = date.match(/(\/Date\((\d+)\)\/)/);
if(mts && mts.length>=3){
date = parseInt(mts[2]);
}
}
date = new Date(date);
if(!date || date.toUTCString() == "Invalid Date"){
return "";
}
var map = {
"M":date.getMonth()+1,
"d":date.getDate(),
"h":date.getHours(),
"m":date.getMinutes(),
"s":date.getSeconds(),
"q":Math.floor((date.getMonth()+3)/3),//季度
"S":date.getMilliseconds() //毫秒
};
format = format.replace(/([yMdhmsqS])+/g,function(all,t){
var v = map[t];
if(v != undefined){
if(all.length > 1){
v = '0' +v;
v = v.substr(v.length - 2);
}
return v;
}else if(t == 'y'){
return (date.getFullYear()+'').substr(4-all.length);
}
return all;
});
return format;
}
当然还有实例化我们的app对象创建一个时间
var app = new Vue({
el:'#app',
data:{
myDate:new Date()
}
});
效果:
拿来就用,还是很不错的!