UNPKG

@mt-kit/vue-directives

Version:
46 lines (33 loc) 1.22 kB
import { App } from "vue"; function dateFormat(time: number): string { const date = new Date(time); const year = date.getFullYear(); /* 在日期格式中,月份是从0开始的,因此要加0 * 使用三元表达式在小于10的前面加0,以达到格式统一 如 09:11:05 */ const month = date.getMonth() + 1 < 10 ? `0${ date.getMonth() + 1}` : date.getMonth() + 1; const day = date.getDate() < 10 ? `0${ date.getDate()}` : date.getDate(); const hours = date.getHours() < 10 ? `0${ date.getHours()}` : date.getHours(); const minutes = date.getMinutes() < 10 ? `0${ date.getMinutes()}` : date.getMinutes(); const seconds = date.getSeconds() < 10 ? `0${ date.getSeconds()}` : date.getSeconds(); // 拼接 return `${year }-${ month }-${ day } ${ hours }:${ minutes }:${ seconds}`; } /** * 转换时间 */ export default function directiveConversionTime(app: App): void { app.directive("conversion-time", { mounted(el) { const text = el.textContent; let timer: number = Number.parseInt(text); // 同意格式 if (JSON.stringify(timer).length === 10) { timer = timer * 1000; } el.textContent = dateFormat(timer); } }); }