背景:有时候会遇到这样的场景,我们在项目中用到某个组件的不同版本,所以查阅了一下npm如何在一个项目中安装同一依赖的不同版本,如我最近就要用到react-dnd的两个版本。

先安装一个版本

以react-dnd10.0.2为例:我们先安装这个版本

  1. npm install react-dnd@10.0.2 -S

指定别名,安装其它版本

现在我们来安装react-dnd16.0.1的版本。
不能直接安装,需要指定别名,这里我们指定为react-dnd16的别名:

  1. npm install react-dnd16@npm:react-dnd@16.01 -S

package.json中显示为:

  1. "react-dnd16": "npm:react-dnd@^16.0.1",

引入依赖

引入16.0.0版本的react-dnd的依赖时只能通过别名引入:

  1. import { DndProvider } from 'react-dnd16';

这样我们就能在同一个项目中用一个插件的不同版本了。