【问题标题】:Error: Webpack 2 can't resolve babel-loader错误:Webpack 2 无法解析 babel-loader
【发布时间】:2017-08-04 12:13:03
【问题描述】:

我在尝试使用 babel 设置 webpack 2 时遇到以下错误消息:

ERROR in Entry module not found: Error: Can't resolve 'babel-loader' in 'path_to_project_dir'

webpack 2 文档后面的配置文件:

const path = require('path')

const config = {
  entry: './src/index.js',
  output: {
    path: path.resolve(__dirname, 'dist'),
    filename: 'bundle.js'
  },
  module: {
    rules: [
      {
        test: /\.jsx?$/,
        exclude: [
          path.resolve(__dirname, 'node_modules')
        ],
        loader: 'babel-loader',
        options: {
          presets: ["es2015"]
        },
      }
    ]
  },
  resolve: {
    modules: [
      'node_modules',
      path.resolve(__dirname, 'src')
    ],
    extensions: ['.js', '.json', '.jsx'],
  }
}

module.exports = config

我的 packages.json 中有以下开发依赖项:

"devDependencies": {
  "babel-core": "^6.24.0",
  "babel-loader": "^6.4.0",
  "babel-preset-es2015": "^6.24.0",
  "path": "^0.12.7",
  "webpack": "^2.2.1",
  "webpack-dev-server": "^2.4.1"
},

我的 node 和 npm 版本是:

node 7.7.1
npm 4.4.1

我的操作系统是 macOS Sierra

此错误消息的来源可能是什么,我应该如何解决它。我尝试了很多教程和博客文章来寻找解决方案,但都没有奏效。

【问题讨论】:

  • 你跑过npm install 对吧?
  • 是的,我做到了,我刚刚使用yarn add *dependency* --dev 创建了依赖项奇怪的事情:现在我删除了 node_modules 和 yarn.lock 然后运行yarn 命令,现在它可以工作了。我仍然很好奇是什么导致了这个依赖问题,以便在将来避免它。
  • @AdamWolski 感谢您提出重新安装节点模块的想法,可能这是一个依赖问题,在我尝试过的其他 webpack 2 设置中做了同样的事情并拥有同样的问题,这样它们也能正常工作。
  • 我设法确定了这个错误的来源,很可能它与webpack 2babel无关,实际上它只在使用atom编辑器的term3包的终端时发生。不知何故,它没有正确安装 npm 模块。使用默认终端时,它可以工作
  • 再次运行npm install babel-loader -D

标签: javascript webpack babeljs webpack-2 babel-loader


【解决方案1】:

我调查了node_modules 目录,发现缺少很多依赖项。我删除了node_modules 目录和yarn.lock 文件,并从一个新的终端窗口运行yarn 命令。

它成功了,安装了所有依赖项,并且 webpack 2 和 babel 正常工作。

最初我使用atom editor's term3 terminal 安装了 npm 模块, 我尝试在那里进行相同的重新安装,但是它产生了最初缺少的依赖项。

所以错误是atom的term3包引起的

解决方法:使用标准终端,不要使用atom的term3包提供的终端

【讨论】:

  • 我还不得不最终将 npm 升级到最新版本,尽管这似乎是一个无关的问题。
猜你喜欢
  • 2017-10-05
  • 2016-04-04
  • 2016-11-09
  • 2017-11-13
  • 2020-04-13
  • 2020-11-18
  • 1970-01-01
  • 1970-01-01
  • 2020-02-02
相关资源
最近更新 更多