import i18n from "@/lang"; export const dateFormat = (fmt: string, x: Date | string) => { const date = typeof x === "string" ? new Date(x) : x; let ret; let opt: IAny = { "Y+": date.getFullYear().toString(), // 年 "M+": (date.getMonth() + 1).toString(), // 月 "d+": date.getDate().toString(), // 日 "h+": date.getHours().toString(), // 时 "m+": date.getMinutes().toString(), // 分 "s+": date.getSeconds().toString() // 秒 }; for (let k in opt) { ret = new RegExp("(" + k + ")").exec(fmt); if (ret) { fmt = fmt.replace( ret[1], ret[1].length == 1 ? opt[k] : opt[k].padStart(ret[1].length, "0") ); } } return fmt; }; export const setPageTitle = (key: string) => { const title = i18n.t("title"); document.title = `${ i18n.te(`route.${key}`) ? i18n.t(`route.${key}`) + " - " : "" }${title}`; }; export const getErrMsg = (errCode: number) => { return i18n.te(`errCode.${errCode}`) ? `${i18n.t(`errCode.${errCode}`)}` : "system error".toUpperCase(); }; export const RegAccount = /^[a-zA-Z0-9]{9,16}$/; export const Dateformat = (t: string | Date, format: string) => { let fmt = format; let ret; const date = typeof t === "string" ? new Date(t) : t; const opt: IAny = { "Y+": date.getFullYear().toString(), // 年 "m+": (date.getMonth() + 1).toString(), // 月 "d+": date.getDate().toString(), // 日 "H+": date.getHours().toString(), // 时 "M+": date.getMinutes().toString(), // 分 "S+": date.getSeconds().toString() // 秒 // 有其他格式化字符需求可以继续添加,必须转化成字符串 }; for (let k in opt) { ret = new RegExp("(" + k + ")").exec(fmt); if (ret) { fmt = fmt.replace( ret[1], ret[1].length == 1 ? opt[k] : opt[k].padStart(ret[1].length, "0") ); } } return fmt; };