i18n.ts 670 B

12345678910111213141516171819202122232425
  1. import { createI18n } from 'vue-i18n'
  2. import zhCn from "~/lang/zh-cn/common.json"
  3. import en from "~/lang/en/common.json"
  4. import zhCnPages from "~/app/lang/zh-cn/pages.json"
  5. import enPages from "~/app/lang/en/pages.json"
  6. export default defineNuxtPlugin((NuxtApp) => {
  7. const i18n = createI18n({
  8. globalInjection: true, //是否全局注入
  9. messages: {
  10. "zh-cn": Object.assign(zhCn, zhCnPages),
  11. "en": Object.assign(en, enPages)
  12. },
  13. silentFallbackWarn: true,
  14. silentTranslationWarn: true
  15. })
  16. NuxtApp.vueApp.use(i18n)
  17. return {
  18. provide: {
  19. getI18n: () => i18n
  20. }
  21. }
  22. })