错误:无法解析模块“babel-loader”
Posted
技术标签:
【中文标题】错误:无法解析模块“babel-loader”【英文标题】:Error: Cannot resolve module 'babel-loader' 【发布时间】:2016-04-04 22:56:24 【问题描述】:当我推送到 heroku 时,我试图在我的 package.json 中的 postinstall 脚本上运行 webpack,但出现以下错误。
ERROR in Entry module not found: Error: Cannot resolve module 'babel-loader' in /tmp/build_6cb4b10367d9382367ab72f2e2f33118
当我在本地运行命令时,我没有遇到任何问题。以下是我的 webpack 配置 - 我尝试使用 resolveLoader 来解决解决问题,但无济于事?
var path = require('path');
var webpack = require('webpack');
var config =
entry: path.resolve(__dirname, './app/main.js'),
output:
path: path.resolve(__dirname, 'dist'),
filename: 'bundle.js'
,
module:
loaders: [
test: /\.js$/,
exclude: /node_modules/,
loader: 'babel-loader'
,
test: /\.less$/,
loader: 'style!css!less'
]
,
resolve:
extensions: ['', '.js', '.jsx', '.less'],
modulesDirectories: [
'node_modules'
]
,
resolveLoader:
root: path.resolve(__dirname, 'node_modules')
,
plugins: [
new webpack.optimize.UglifyJsPlugin(minimize: true)
]
;
module.exports = config;
有什么建议吗?谢谢
【问题讨论】:
执行npm i babel-loader -D
或npm install babel-loader --save-dev
重新安装babel-loader
【参考方案1】:
我找到了原因。我的 package.json 中没有 babel 或 babel-core。添加它们修复了错误。
"devDependencies":
"babel": "^5.8.23",
"babel-core": "^5.0.0",
"babel-loader": "^5.3.2"
【讨论】:
如果你在 package.json 中展示你的开发依赖项,你会得到很多赞,而不是下面的那个人 :-),【参考方案2】:在我的情况下,我在安装加载程序时拼错了,所以请确保安装
babel-loader
不是
bable-loader
【讨论】:
哈!非常感谢:) 我写的是 babel-laoder 而不是 babel-loader【参考方案3】:就我而言,我尝试了以下命令:
$ npm install babel-loader --save
并根据控制台的提示继续修复其余部分,并修复了问题:
“找不到入口模块中的错误:错误:无法解析'babel-loader'”
【讨论】:
好,这里是 js 的新手(尤其是 babel),不知道为什么 npm install babel-loader --save=dev 不起作用! @khanna 它应该是 npm install babel-loader --save-dev 您在命令中添加了“=”而不是“-”【参考方案4】:在某些情况下,在部署到生产环境时(例如使用 Rails Webpacker),不会加载开发依赖项。所以在devDependencies
中使用 babel-loader 是行不通的。
事实上,将 babel-loader 放在 dependencies
中而不是 devDependencies
中是有道理的,因为它用于生产代码本身。唯一应该在 devDependencies
中的包是那些在开发中运行的包,例如测试和 linter。
【讨论】:
【参考方案5】:我在 devDependencies 中有我的,但它不起作用,我将它切换到 dependencies,它终于起作用了!
【讨论】:
【参考方案6】:我删除了 yarn.lock 和 node_modules 文件夹,然后在 package.json 的 devDependencies 中省略了 babel-loader,然后我重新运行 yarn,它就可以工作了。
【讨论】:
【参考方案7】:我正在为 rails + react 项目使用 yarn 和 webpacker。
我知道不是每个人都可以升级所有依赖项而不破坏任何东西,但对我来说,添加运行 yarn upgrade
修复了这个错误。
我的dependencies
配置中只有@babel/core
,因为babel-loader
包含在webpacker 的依赖项中。
【讨论】:
谢谢!这也是我遇到此错误的背景。【参考方案8】:使用 yarn 2 时,webpack 4 无法解析 loader。或更新到 webpack 5
我必须使用 PnPify 才能使其工作。
yarn pnpify webpack
【讨论】:
【参考方案9】:我在处理 Rails 6 应用程序时遇到了类似的错误。
我认为问题在于 Babel-loader 节点包未正确安装或应用程序无法找到可执行文件。
我所要做的就是通过运行来升级应用程序中的节点包:
yarn upgrade
这是我的devDependencies
在我的package.json
文件中:
"devDependencies":
"webpack": "^4.43.0",
"webpack-cli": "^3.3.12",
"webpack-dev-server": "^3.11.0
注意:我不必将 Babel-loader 节点包包含在 devDependencies 列表中即可工作。
就是这样。
我希望这会有所帮助
【讨论】:
【参考方案10】:在我的例子中,react-scripts 将 babel-loader 作为依赖项导入。它工作了一段时间,因为它在 package-lock.json 中。如果您的部门中有 react-scripts,请尝试删除 node_modules、package-lock.json 并再次执行 npm install。
【讨论】:
以上是关于错误:无法解析模块“babel-loader”的主要内容,如果未能解决你的问题,请参考以下文章