如何热重新加载包装在本机导入上下文中的模块?

我有以下功能的文件@/lang/index.js:


async function fetchMessages(locale) {

  const module = await import(/*

    webpackChunkName: "lang/[request]",

    webpackExclude: /index/

  */ `@/lang/${locale}`)


  return module.default

}

我想热重载此功能导入的模块。我尝试了几种不同的方法,module.hot.accept()但没有成功。


这是我无法正常运行的同一文件末尾的热重装代码:


if (process.env.NODE_ENV !== "production" && module.hot) {

  module.hot.accept(["./en-US"], () => {

    const { locale } = i18n

    fetchMessages(locale).then((strings) => {

      i18n.setLocaleMessage(locale, strings)

    })

  })

}

有什么想法吗?当检测到更改时,我想热重载我的语言文件。


阿波罗的战车
浏览 103回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript