index.ts 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. import i18n from "@/lang";
  2. export const dateFormat = (fmt: string, x: Date | string) => {
  3. const date = typeof x === "string" ? new Date(x) : x;
  4. let ret;
  5. let opt: IAny = {
  6. "Y+": date.getFullYear().toString(), // 年
  7. "M+": (date.getMonth() + 1).toString(), // 月
  8. "d+": date.getDate().toString(), // 日
  9. "h+": date.getHours().toString(), // 时
  10. "m+": date.getMinutes().toString(), // 分
  11. "s+": date.getSeconds().toString() // 秒
  12. };
  13. for (let k in opt) {
  14. ret = new RegExp("(" + k + ")").exec(fmt);
  15. if (ret) {
  16. fmt = fmt.replace(
  17. ret[1],
  18. ret[1].length == 1 ? opt[k] : opt[k].padStart(ret[1].length, "0")
  19. );
  20. }
  21. }
  22. return fmt;
  23. };
  24. export const setPageTitle = (key: string) => {
  25. const title = i18n.t("title");
  26. document.title = `${
  27. i18n.te(`route.${key}`) ? i18n.t(`route.${key}`) + " - " : ""
  28. }${title}`;
  29. };
  30. export const getErrMsg = (errCode: number) => {
  31. return i18n.te(`errCode.${errCode}`)
  32. ? `${i18n.t(`errCode.${errCode}`)}`
  33. : "system error".toUpperCase();
  34. };
  35. export const RegAccount = /^[a-zA-Z0-9]{9,16}$/;
  36. export const Dateformat = (t: string | Date, format: string) => {
  37. let fmt = format;
  38. let ret;
  39. const date = typeof t === "string" ? new Date(t) : t;
  40. const opt: IAny = {
  41. "Y+": date.getFullYear().toString(), // 年
  42. "m+": (date.getMonth() + 1).toString(), // 月
  43. "d+": date.getDate().toString(), // 日
  44. "H+": date.getHours().toString(), // 时
  45. "M+": date.getMinutes().toString(), // 分
  46. "S+": date.getSeconds().toString() // 秒
  47. // 有其他格式化字符需求可以继续添加,必须转化成字符串
  48. };
  49. for (let k in opt) {
  50. ret = new RegExp("(" + k + ")").exec(fmt);
  51. if (ret) {
  52. fmt = fmt.replace(
  53. ret[1],
  54. ret[1].length == 1 ? opt[k] : opt[k].padStart(ret[1].length, "0")
  55. );
  56. }
  57. }
  58. return fmt;
  59. };