gpt4 book ai didi

node.js - 如何解决我的 create-react-app 包的 webpack "unmet peer dependency"警告?

转载 作者:行者123 更新时间:2023-12-05 05:13:30 24 4
gpt4 key购买 nike

create-react-app (CRA) 是一个命令行工具,可帮助您设置新的 React 应用程序。它创建一个包含 react-scripts 依赖项的 package.json

react-scripts 包有一个 webpack 依赖项(当前版本 4.19.1。)

craco是一个可以轻松配置 create-react-app 的库。

我发布了一个 craco-less包,这是一个 craco 插件。它可以很容易地设置对 create-react-app 的 Less 支持。 craco-less 依赖项包括 css-loaderstyle-loader 包,这些 包有 webpack@^4.0.0 在它们的 peerDependencies 中。

当我安装craco-less 包(yarn add craco-less)时,我收到以下警告:

warning "craco-less > css-loader@1.0.1" has unmet peer dependency "webpack@^4.0.0".
warning "craco-less > less-loader@4.1.0" has unmet peer dependency "webpack@^2.0.0 || ^3.0.0 || ^4.0.0".

我尝试将其添加到我的 package.json 中:

"peerDependencies": {
"webpack": "^4.0.0"
}

但这只是给了我一个额外的警告:

warning "craco-less > css-loader@1.0.1" has unmet peer dependency "webpack@^4.0.0".
warning "craco-less > less-loader@4.1.0" has unmet peer dependency "webpack@^2.0.0 || ^3.0.0 || ^4.0.0".
warning " > craco-less@1.2.2" has unmet peer dependency "webpack@^4.0.0".

我还尝试将 webpack 添加为显式依赖项,这在 90% 的情况下都有效,但有时会导致 create-react-app 崩溃并出现所述错误in this GitHub issue :

npm package crash

(似乎只发生在 npm install,而不是 yarn install。)

我刚刚意识到发生此错误是因为react-scripts 依赖于特定的webpack 版本,而我的包具有松散的依赖性(^4.0.0)。但我本以为 react-scripts 依赖项会覆盖这个松散的版本约束并安装 4.19.1 而不是最新版本 (4.27.1).我认为这就是它使用 yarn 而不是 npm 的原因,因为也许 yarn 具有更智能的依赖关系解析。

我的库依赖于 "react-scripts": "^2.1.1" (flexible),所以我想知道是否有办法委托(delegate)给他们的 webpack 依赖而不是安装最新版本?

4.19.1 指定为硬编码版本会很痛苦,因为每当他们更新react-scripts 包。或者如果无法在 package.json 中完成这些更新,我可以编写一个脚本来自动执行这些更新。

谢谢!

最佳答案

yarn upgrade webpack@^4.0.0

Reference

关于node.js - 如何解决我的 create-react-app 包的 webpack "unmet peer dependency"警告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53681694/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com