【问题标题】:webpack 2 cannot resolve empty extensionswebpack 2 无法解析空扩展
【发布时间】:2017-06-23 11:06:37
【问题描述】:

所以在webpack 2 需要/导入文件时import file from './file';

我收到以下消息:

您可能需要适当的加载程序来处理此文件类型。

这是因为当需要 webpack@1.xx 中的文件时,我曾经有:

resolve: { extensions: ['', '.js'] ...

但似乎这在 webpack@2 中不再被接受

配置对象无效。 Webpack 已使用 与 API 架构不匹配的配置对象。 - configuration.resolve.extensions[0] 不能为空。

我已经阅读了migrating guide,但我找不到它。

我的装载机就是这么简单:

module: {
  rules: [
    {
      test: /\.js$/,
      exclude: /node_modules/,
      use: 'babel-loader'
    }
  ]
}

我该如何解决?

谢谢

【问题讨论】:

  • 你的装载机有什么?如果你把配置文件放上去可能会有所帮助。
  • 是的,请参考您的配置文件,以便我们查看问题所在

标签: javascript webpack migration webpack-2


【解决方案1】:

这已经在 webpack2 中被修改了

现在你只需要提供

resolve: {extensions: ['.js', '.ts','jsx','tsx']}

根据您选择的代码语法

如果你在数组中提供 '' 会引发错误

configuration.resolve.extensions[0] 不能为空

如果您想匹配所有文件,也可以提供['*']

【讨论】:

    【解决方案2】:

    在较新的 Webpack 版本中,您不能使用空字符串。它说:

    Getting error: configuration.resolve.extensions[0] should not be empty

    您必须使用extensions: ['.js']extensions: ['*', '.js']

    问题:https://github.com/webpack/webpack/issues/3043

    【讨论】:

    • 你拯救了我的一天:):):)
    猜你喜欢
    • 2016-11-04
    • 1970-01-01
    • 2019-02-03
    • 2021-02-24
    • 2017-08-04
    • 1970-01-01
    • 1970-01-01
    • 2017-08-10
    • 1970-01-01
    相关资源
    最近更新 更多