美文网首页
前端日期格式化

前端日期格式化

作者: alipy_258 | 来源:发表于2017-12-07 21:12 被阅读0次

需求:

假如后端返回一串 "1469281964000",需要前端同学进行日期格式化为:"2016-07-23 21:52"

方法:

本篇文章语法涉及到:vue、es6

代码如下:

1. 首先我们建一个公共的 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 === 1 ? str : padLeftZero(str))

        }

    }

    return fmt

}

function padLeftZero(str) {

    return ('00' + str).substr(str.length)

}

2. 在调用页面引入 date.js 文件

<!--下面这个是html 模版,(1469261964000)这一串,就是需要转换的日期-->

<div>{{1469261964000 | formatDate}}</div> 

// 引入date.js文件

import {formatDate} from 'common/js/date' 

// 使用

export default {

    filters: {

        formatDate(time) {

            let date = new Date(time) return formatDate(date, 'yyyy-MM-dd hh:mm')

        }

    }

注意:filters 方法和methods 方法是同级的

相关文章

网友评论

      本文标题:前端日期格式化

      本文链接:https://www.haomeiwen.com/subject/igwjixtx.html