带有承诺的 vue-i18n 动态语言环境不会更新



我正在测试vue-i18n,以便为我未来的项目实现它。我有一个单独的系统来处理翻译,所以我得到了远程json文件。vue-i18n有一个使用promise获取区域设置的系统,这里有解释。

我不能使用fetch方法,因为我的文件在外部,所以我遇到了跨源问题。相反,我用vue-resource做,但我不知道为什么,当我设置一组新的区域设置时,它不会自动更新。因为默认的语言是en,所以当我加载en语言环境文件时,它什么也不做。我必须更改两次config.lang来强制更新。

几件事情:

  • jsfiddle to test> http://jsfiddle.net/t4kdoqj7/3/取消第19行注释以重现修复

  • 可能是由于vue-resource使用不当

  • I couldn't create a vue-i18n tag…

感谢您的帮助

好了,我刚刚发现了一个hack:

在加载任何内容之前设置Vue.config.lang = ''

Here the fiddle (19)> http://jsfiddle.net/t4kdoqj7/4/

最新更新