相关疑难解决方法(0)

npm:何时使用 `--force` 和 `--legacy-peer-deps`

我是 npm 的新手,正在尝试了解重新创建node_modules部署目录的工作原理。

我们使用npm ci而不是npm install确保在部署期间干净利落。但是,当我们在没有任何标志的情况下运行它时,我们会收到以下错误:

修复上游依赖冲突,或使用 --force 或 --legacy-peer-deps 重试此命令以接受不正确(并且可能已损坏)的依赖解析。

文件npm install用于--force如下(有上没有国旗npm ci页面):

-f 或 --force 参数将强制 npm 获取远程资源,即使磁盘上存在本地副本。

同时,文档--legacy-peer-deps说:

--legacy-peer-deps:安装时忽略所有 peerDependencies,采用 npm 版本 4 到版本 6 的风格。

似乎这两个标志都npm ci可以node_modules毫无问题地生成目录,但我仍然不清楚两者之间的区别。

据我了解,--force听起来它将基于最后下载的依赖项,并将覆盖任何以前下载的依赖项。同时,--legacy-peer-deps听起来它在安装过程中总是会跳过对等依赖项(无论是什么),即使没有问题。

这两个标志有什么区别,我们什么时候应该使用它们?

node.js npm node-modules npm-install npm-ci

43
推荐指数
3
解决办法
3万
查看次数

无法解析依赖树 Reactjs

我正在尝试在我当前的项目中安装 react-tinder-card。所以我想安装 react-tinder-card 但在我使用命令之后

npm install --save react-tinder-card

我在控制台中只能看到:

npm ERR! code ERESOLVE
npm ERR! ERESOLVE unable to resolve dependency tree
npm ERR! 
npm ERR! While resolving: tinder-clone@0.1.0
npm ERR! Found: react@17.0.1
npm ERR! node_modules/react
npm ERR!   react@"^17.0.1" from the root project
npm ERR! 
npm ERR! Could not resolve dependency:
npm ERR! peer react@"^16.8.0" from react-tinder-card@1.3.1
npm ERR! node_modules/react-tinder-card
npm ERR!   react-tinder-card@"*" from the root project
npm ERR! 
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this …
Run Code Online (Sandbox Code Playgroud)

javascript package npm reactjs tinder

34
推荐指数
7
解决办法
4万
查看次数