npm - 不兼容的 babel-loader 和 babel-core 版本

标签 npm babeljs package.json babel-loader

我安装了 babel-core , babel-loader ,以及其他一些通过 npm 的包

npm install babel-loader babel-core ...

这导致了我的 package.json 中的以下定义
"dependencies": {
  "babel-core": "^6.26.3",
  "babel-loader": "^8.0.0",
  ...
},

在这个问题的时候,最新版本的babel-core确实是6.26.3和最新版本babel-loader8.0.0根据 npmjs.com 存储库。

但是,当我运行时 npm install再次验证一切,我收到此消息:
npm WARN babel-loader@8.0.0 requires a peer of @babel/core@^7.0.0 but none is installed. You must install peer dependencies yourself.

为什么会babel-loader取决于 babel-core 的版本那还不存在?解决此警告的推荐方法是什么?

谢谢!

编辑 看起来像 babel-loader图书馆仅在 4 天前发布。这可能是由于发布而引起的相对较新的问题吗?

enter image description here

最佳答案

babel-loader@8.x是用于 Babel 7.x 的 Webpack 集成。 Babel 7.x 已经从 babel- 移动了所有包@babel 的前缀npm范围。

错误是正确的,你安装不正确babel-core而不是 @babel/core .

如果你想安装 Babel 6.x,你可以这样做

npm install --save-dev babel-loader@7 babel-core

但是如果你正在开始一个新项目,Babel 7 更有意义,所以你最好这样做
npm install --save-dev babel-loader @babel/core

关于npm - 不兼容的 babel-loader 和 babel-core 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52118494/

相关文章:

angular - gyp ERR,Npm 无法获取本地颁发者证书

javascript - npm 使用 babel-node 和 dotenv 启动脚本

node.js - Meteor 作为 npm 模块的依赖项?错误: Cannot find module 'meteor/mongo'

node.js - npm ERR cb() 从未调用

javascript - "Sequelize is not a constructor"初始化 Sequelize 时

javascript - Webpack + @babel/preset-env 与动态导入... package.module 不被尊重?

npm - 更新版本号在 package.json 和 package-lock.json 中,不更新依赖

angular - 未处理的 promise 拒绝 : Zone. js 检测到 ZoneAwarePromise : Angular

javascript - VUE 安装 - 无法解析依赖关系树

reactjs - 为什么 React 需要 Babel 和 Webpack 才能工作?