在 <i18n> 标记中延迟加载翻译文件

haf*_*fer 6 javascript webpack vue.js vue-component vue-i18n

我想减小应用程序的大小,所以我从语言文件开始。
我正在使用vue-i18n 单文件组件,我可以像这样vue-i18n 延迟加载。我读过有关自定义语言块的内容,但据我所知,我无法在 src 中设置动态区域设置。

现在我的问题:有没有办法在<i18n>标签中延迟加载语言?

Mic*_*evý 0

库作者确实回答了这个问题 - 定义为 Vue SFC 一部分的翻译被编译(由适当构建工具的加载程序)作为 SFC 模块的导出。这意味着它们是组件模块的一部分,延迟加载的唯一方法是延迟加载组件本身

所以不,没有办法延迟加载i18 自定义块中定义的单一语言。如果您需要延迟加载,请不要使用自定义块,而是在全局 JSON 文件中定义翻译(按语言划分)。另一种选择是完全重写加载器本身以收集自定义块并将其合并到此类全局模块中,但这需要大量工作,我不建议这样做......

  • 你可以自己做,它是开源的...... (2认同)