1. 程式人生 > >vue2.0怎樣將時間戳轉化為日期格式

vue2.0怎樣將時間戳轉化為日期格式

<!-- value 格式為13位unix時間戳 -->
<!-- 10位unix時間戳可通過value*1000轉換為13位格式 -->
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); };

 把上面程式碼儲存為date.js放到你的公共js資料夾中。

在你的需要格式化時間戳的元件裡像下面這樣使用:

<template>
    <!-- 過濾器  time 可以使後臺得到的資料,迴圈出來的也行 -->
    <div>{{time | formatDate}}</div>
    <!-- 輸出結果 -->
    <!-- <div>2016
-07-23 21:52</div> --> </template> <script> import {formatDate} from './common/date.js'; export default { filters: { formatDate(time) { var date = new Date(time); return formatDate(date, 'yyyy-MM-dd hh:mm'); } } } </script>