0

当前设置

  1. Webpack 与 React 在创建的设置中create-react-app
  2. Babel React Intl 插件管理器用于提取翻译字符串

期望的行为

babel 插件会生成一个文件,其中包含所有必须翻译的提取字符串。到目前为止,一切都很好。这发生在 webpack 和 babel 运行时(解析和编译代码)。

我想require将该生成的messages.json文件放入我的代码中,因为我必须在运行时将该文件发送到 API。

所以我想像这样使用动态导入的 Webpack 2 功能:

export const getTranslations = (language) => {
    import('translations/en.json').then(messages => { ... do stuff ...})
}

问题

Webpack 在编译时当然无法找到该文件,因此它会抱怨:

Module not found: Can't resolve 'translations/en.json'

4

1 回答 1

0

如果您的文件在您的文件夹中(因此不在 node_modules 中),则其路径应写为相对路径:

export const getTranslations = (language) => {
  import('./translations/en.json').then(messages => { ... do stuff ...})
}

这行得通吗?

于 2018-01-12T00:11:34.420 回答