vue 封装时间格式处理

使用dayjs 对时间戳进行转换

处理方法

    在vue项目utils目录中,新建一个DateFormat.js文件
import dayjs from "dayjs";
// 日期格式化 YYYY-MM-DD
export const DateFormat = val => {
          
   
    if (val) {
          
   
        return dayjs(val).format("YYYY-MM-DD") == "Invalid date" ?
            "" :
            dayjs(val).format("YYYY-MM-DD");
    } else {
          
   
        return null;
    }
};

// 日期时间格式化 YYYY-MM-DD HH:MM:SS
export const DateTimeFormat = val => {
          
   
    if (val) {
          
   
        return dayjs(val).format("YYYY-MM-DD HH:mm") == "Invalid date" ?
            "" :
            dayjs(val).format("YYYY-MM-DD HH:mm");
    } else {
          
   
        return null;
    }
};
// 日期时间格式化HH:MM:SS
export const TimeFormat = val => {
          
   
    if (val) {
          
   
        return dayjs(val).format("HH:mm:ss") == "Invalid date" ?
            "" :
            dayjs(val).format("HH:mm:ss");
    } else {
          
   
        return null;
    }
};

export default {
          
   
    install(Vue, Opt) {
          
   
        // 筛选器
        // 日期格式化 HH:MM:SS
        Vue.filter("TimeFormat", val => {
          
   
            return TimeFormat(val);
        });
        // 日期格式化 YYYY-MM-DD
        Vue.filter("DateFormat", val => {
          
   
            return DateFormat(val);
        });
        // 日期时间格式化 YYYY-MM-DD HH:mm:ss
        Vue.filter("DateTimeFormat", val => {
          
   
            return DateTimeFormat(val);
        });
    }
};
    在main.js中引入 挂载到vue上
import Vue from "vue";
import App from "./App";
import router from "./router";

// 清除浏览器默认样式
import "normalize.css";
import "less";

// 引入ElementUI
import ElementUI from "element-ui";
import "sgm-element-ui/lib/theme-sgm/index.css"
// 引入封装好的国际化插件 详见/lang/config
import {
          
   
    i18n
} from ./lang/config

import MoneyFormat from @/utils/DateFormat


//
Vue.use(DateFormat);
Vue.use(ElementUI);

-页面中使用

<el-table-column prop="price">
   <template slot-scope="scope">
        <span>{
         
  { scope.row.date| DateTimeFormat}}</span>
    </template>
</el-table-column>
经验分享 程序员 微信小程序 职场和发展