【问题标题】:i18next library taking too much time in initializationi18next 库在初始化时花费太多时间
【发布时间】:2022-11-30 00:14:32
【问题描述】:

我试图将我的应用程序与 i18next 库集成以支持本地化。我对检测到的语言几乎没有做出任何决定,因此这位于应用程序启动的关键路径中。

我观察到下面的调用大约需要 200-300 毫秒。我希望我能在检测到语言之后而不是在实际下载资源时得到回调(/local/*.json)

await i18n
.use(backend)
.init({
    fallbackLng: 'en',
})

我尝试了下面的事件回调,但所有这些都在 200-300 毫秒后出现。

i18n.on('initialized', function(options) {
  console.log("i18n","initialized")
})


i18n.on('loaded', function(loaded) {
  console.log("i18n","loaded")
})

i18n.on('languageChanged', function(lng) {
  console.log("i18n","language detected")
})

当我最后尝试进行此类语言检测时,它会在不到 1 毫秒的时间内完成。我只是想弄清楚是什么让这个库运行缓慢。

【问题讨论】:

    标签: javascript reactjs localization i18next


    【解决方案1】:

    根据使用的 i18next 后端,它不仅检测语言,还加载(获取)适当的翻译资源。 如果没有 i18next 后端(全部在内存中),你会发现它花费的时间更少:https://www.i18next.com/how-to/add-or-load-translations#add-on-init

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-07-23
      • 2016-05-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多