【问题标题】:Translating WebApp with vue-i18n without changing URL在不更改 URL 的情况下使用 vue-i18n 翻译 WebApp
【发布时间】:2019-07-11 18:59:12
【问题描述】:

什么是 i18n 的最佳实现。它是针对 web 应用程序的,所以我不想根据语言环境更新 url。

我正在使用 nuxt 框架,所以我研究了 nuxt-i18n,但如果不更新 url,这是不可能的。

【问题讨论】:

    标签: vue.js vuex nuxt.js vue-i18n


    【解决方案1】:

    在 nuxt.config.js/ts 中

    i18n: {
    ...
    strategy: 'no_prefix',
    ...
    
    }
    

    要更改语言环境,请使用以下内容:

    changeLocale() {
      this.$i18n.setLocale(this.$i18n.locale === 'en' ? 'tr' : 'en')
    }
    

    【讨论】:

      【解决方案2】:

      我尝试创建一个简单的示例,但我们仍然可以改进。

      在这种方法中,我尝试使用 cookie 而不是路径,为此我需要在切换语言时创建一个刷新页面,否则我们的组件不会加载新的翻译。

      在这里查看:https://codesandbox.io/embed/example-i18n-mo8t7?fontsize=14

      【讨论】:

      • 谢谢!我在我的 Nuxt 应用程序中实现了这一点,它没有任何问题!非常感谢!
      猜你喜欢
      • 2019-03-28
      • 2013-01-11
      • 1970-01-01
      • 1970-01-01
      • 2020-05-06
      • 2019-01-05
      • 1970-01-01
      • 2020-12-20
      • 1970-01-01
      相关资源
      最近更新 更多