假设我有使用一些旧包的遗留代码库:
"mobx": "5.15.4",
"mobx-react": "6.1.8",
Run Code Online (Sandbox Code Playgroud)
在开发一些新的实验性功能时,我想使用这些软件包的较新版本,但也必须将遗留功能保留在工作状态。因此,我为新版本的软件包添加了别名,这样我就可以将它们与旧版本一起使用:
"@new/mobx": "npm:mobx@^6.3.13"
"@new/mobx-react": "npm:mobx-react@^7.2.1"
Run Code Online (Sandbox Code Playgroud)
但mobx-react用作mobx对等依赖。显然,问题在于@new/mobx-react正在观看旧mobx版本,并且预计应该有mobx6+ 版本。
有没有什么方法可以手动解决 的对等依赖关系@new/mobx-react,以便它会监视@new/mobx而不仅仅是mobx?或者,也许有一种方法可以隐式安装对等依赖项,@new/mobx-react而不会覆盖旧mobx版本?
你可以轻松做到这一点
set NODE_ENV=development
npm install mobx@5.15.4 --save
npm install mobx-react@6.1.8 --save
npm install @new/mobx@npm:mobx@^6.3.13 --save
npm install @new/mobx-react@npm:mobx-react@^7.2.1 --save
Run Code Online (Sandbox Code Playgroud)
那么你必须手动安装 @new/mobx-react 的依赖项,如下所示:
cd ./node_modules/@new/mobx-react
npm install --ignore-scripts
Run Code Online (Sandbox Code Playgroud)
这将导致版本 6.3.14 的 mobx 出现在 @new/mobx-react 的 node_modules 中
node.js(从npm版本3开始)首先尝试从包的内部node_modules加载依赖项,然后从项目的node_modules参见:文档
| 归档时间: |
|
| 查看次数: |
2532 次 |
| 最近记录: |