feat(locales): 动态导入路由本地化消息文件
Some checks failed
CI/CD Pipeline / playwright (push) Failing after 8m31s
CI/CD Pipeline / build-and-deploy (push) Has been skipped

This commit is contained in:
严浩
2025-10-26 20:33:04 +08:00
parent 5b0c0716fd
commit a601f2bc55

View File

@@ -1,7 +1,16 @@
import enUS from './en-US';
import zhCN from './zh-CN';
import type { I18nOptions } from 'vue-i18n';
export const locales4RouteMessages = {
'zh-CN': zhCN,
'en-US': enUS,
};
const modules = import.meta.glob(['./*.ts', '!./_messages-auto-imports.ts'], {
eager: true,
import: 'default',
});
type MessageType = Record<string, string>;
export const locales4RouteMessages: I18nOptions['messages'] = Object.entries(modules).reduce(
(messages, [path, mod]) => {
const locale = path.replace(/(\.\/|\.ts)/g, '');
messages[locale] = mod as MessageType;
return messages;
},
{} as Record<string, MessageType>,
);