入门客AI创业平台(我带你入门,你带我飞行)
博文笔记

vue2.0 自定义日期时间过滤器

创建时间:2017-06-07 投稿人: 浏览次数:10278

方法一:

// template
{{a | data}}

//script
data:{
    a: Date.now()
}
filters: {
   data:function (input) {
       var d = new Date(input);
       var year = d.getFullYear();
       var month = d.getMonth() + 1;
       var day = d.getDate() <10 ? "0" + d.getDate() : "" + d.getDate();
       var hour = d.getHours();
       var minutes = d.getMinutes();
       var seconds = d.getSeconds();
       return  year+ "-" + month + "-" + day + " " + hour + ":" + minutes + ":" + seconds;
   }

方法二: 正则

// template
{{date | formatDate}}

//script
import {formatDate} from "../../common/js/date"

filters: {
  formatDate (time) {
    let date = new Date(time)
    return formatDate(date, "yyyy-MM-dd hh:mm")
  }
}
//date.js
export 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)
}
阅读更多
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。