jhzh
2025-04-03 db12897dc68c68d40c557aa59ad78022e2b30ac2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import vue from "vue";
import VueI18n from "vue-i18n";
vue.use(VueI18n)
 
// 获取语言
const requireComponent = require.context(
    // 其组件目录的相对路径
    './lang',
    // 是否查询其子目录
    true,
    // 匹配基础组件文件名的正则表达式
    /[a-zA-Z]\w+\.(json)$/
)
let messages = new Object();
requireComponent.keys().forEach(fileName => {
    // 获取组件的PascalCase命名
    const componentName = fileName.split('/').pop().replace(/\.\w+$/, '');
    messages[componentName] = requireComponent(fileName);
})
// 语言注入
let i18n = new VueI18n({
    locale: uni.getStorageSync('language')||'en',
    messages: messages
})
export default i18n;