index.js 690 B

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