首页 > 解决方案 > 在 nuxt.js 中使用 i18n 和多语言文件

问题描述

我将 nuxt/i18n 用于需要每种文件夹语言中的多个文件的大型项目。

例如我们已经about.js导入了index.js.

我想访问和使用导入的关于索引中的文件,或者访问所有导入文件所在的另一个文件。

这里是index.js

import about from './about.js'

export default {
  data(){
    return about;
  },
  home: 'خانه',
  posts: 'پست ها',
  about: 'درباره ما',
  paragraph: 'لورم ایپسوم متن ساختگی با تولید سادگی نامفهوم از صنعت چ ,
  homepage: {
    title: 'عنوان تستی',
    subtitle: 'توضیحات'
  }
}

这是about.js

export default {
   aboutUsTitle: "متن تستی درباره ما"
}

标签: javascriptvue.jsi18nextreact-i18nextvue-i18n

解决方案


对于那些和我有同样问题的人。您可以通过这种方式导入您想要的任何语言文件夹和文件。

 modules: [
    // Doc: https://github.com/nuxt-community/axios-module#usage 
    [
      'nuxt-i18n',
      {
        strategy: 'prefix_except_default',
        defaultLocale: 'en',
        langDir: 'languages/',
        lazy: true,
        locales: [
          { code: 'fa', iso: 'fa-IR', name: 'fa', file: 'fa/index.js', dir:'rtl'          },
          { code: 'en', iso: 'en-US', name: 'en', file: 'en/index.js', dir:'ltr' }
        ]
      }
    ]
  ],

在这里,您添加了一个语言文件夹,其中包含您想要在您的网站中使用的所有语言(但您可以看到它是您的索引文件)然后您必须定义应该在您中声明的文件,index.js 如下例所示:

import about from './about.js'
import homepage from './homepage.js'

export default {
about,
homepage
}

这就是全部。我希望它对你们中的一些人有所帮助。我也会在我的 github 上分享代码源,请查看。 https://github.com/rozhansh43/lang-folder


推荐阅读