如何在package.json中使用同一节点依赖的2个不同版本?



我正在做一个react js应用程序,我使用Material-UI v5.0.0为我的UI组件。这个新版本将@material-ui/*前缀中的包名替换为@mui/*:

@material-ui/system -> @mui/system
@material-ui/styles -> @mui/styles
@material-ui/lab -> @mui/lab

在我的项目中,我还使用另一个依赖项在1页上显示日历,该依赖项有一个对等依赖项material - ui v4.12.3,它导入了像@material-ui/system这样的材料库。

我应该如何管理我的依赖包。所以我可以使用Material-UI v5.0.0大多数我的UI/UX,仍然能够使用依赖仅为一个特定的UI屏幕。

我应该npm安装材料UI v5.0.0和v4.12.3还是有更好的方法做到这一点?

使用npm或yarn,你可以在别名下安装特定的包,这样你就可以在两个不同的版本下使用相同的包。

npm install <alias>@npm:<pkg_name><@version> # for npm
yarn add <alias>@npm:<pkg_name><@version> # for yarn

的例子:安装Material-UI

npm install v5n@npm:@mui/material@5.0.0
npm install v4n@npm:@mui/material@4.12.3

那么您可能需要它们作为

import Button from 'v5/Button';

最新更新