【问题标题】:How change language in Element UI and Vue dynamically?如何动态更改 Element UI 和 Vue 中的语言?
【发布时间】:2018-10-26 12:41:14
【问题描述】:

我有渲染的 el-table。用户更改语言我有想要设置新语言的事件。但是 table 并没有动态地改变这种语言,因为它被提前渲染了。 对于翻译,我们使用 vue-gettext

import elementLangDe from 'element-ui/lib/locale/lang/de';
import elementLocale from 'element-ui/lib/locale';
elementLocale.use(elementLangDe);

【问题讨论】:

    标签: vuejs2 element-ui


    【解决方案1】:

    你需要合并vue-i18n

    Vue.use(Element, {
      i18n: (key, value) => i18n.t(key, value)
    })
    

    那么你只需要更改i18n.locale的值即可。

    详情见:

    【讨论】:

      【解决方案2】:

      传递给Vue.use(ElementUI, {locale})函数的参数名称始终是“locale”。

      我检查了之前设置的 window.local 以设置语言环境变量是我要设置动态的语言。

      这是我的代码:

      window.Vue = require('vue').default;
      import locale_vi from 'element-ui/lib/locale/lang/vi';
      import locale_ja from 'element-ui/lib/locale/lang/ja';
      import locale_ja from 'element-ui/lib/locale/lang/ja';
      import locale_en from 'element-ui/lib/locale/lang/en';
      import ElementUI from 'element-ui';
      import 'element-ui/lib/theme-chalk/index.css';
      
      let locale;
      
      switch(window.local) {
        case "vi":
          locale = locale_vi;
          break;
        case "en":
          locale = locale_en;
          break;
        default:
          locale = locale_ja;
      }
      Vue.use(ElementUI, {locale});
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-02-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-07-15
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多