use*_*003 7 npm package.json babeljs babel-loader
我通过npm 安装了babel-core,babel-loader和其他一些软件包
npm install babel-loader babel-core ...
Run Code Online (Sandbox Code Playgroud)
这导致了我的以下定义 package.json
"dependencies": {
"babel-core": "^6.26.3",
"babel-loader": "^8.0.0",
...
},
Run Code Online (Sandbox Code Playgroud)
在这个问题的时候,最新版本babel-core确实6.26.3和最新版本babel-loader是8.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.
Run Code Online (Sandbox Code Playgroud)
为什么babel-loader依赖于babel-core那个版本尚不存在?什么是解决此警告的推荐方法?
谢谢!
编辑看起来这个babel-loader图书馆仅在4天前发布.这可能是一个相对较新的问题,因为它被发布?
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
Run Code Online (Sandbox Code Playgroud)
但是如果你正在开始一个新项目,Babel 7 更有意义,所以你最好这样做
npm install --save-dev babel-loader @babel/core
Run Code Online (Sandbox Code Playgroud)
所以正如我怀疑的那样,这是一个版本控制问题。
我访问了babel-loader 版本历史页面,发现该版本babel-loader与最新版本大约在同一时间发布babel-core,因此它们很可能能够很好地配合使用。
在本例中,时间是7.1.46 个月前。
从那里开始一切都很顺利。令人难以置信的是,包管理器的主要好处之一是它们解决了依赖性问题,但像这样的项目却出现了如此严重的基本失败。
"dependencies": {
"babel-core": "^6.26.3",
"babel-loader": "^7.1.4",
...
},
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4797 次 |
| 最近记录: |