Closed fengyon closed 1 year ago
请安装npm7或更高版本,会自动安装peerDependencies 。
抱歉,是我们文档和package.json没有描述要求npm7。
已发布1.0.1版,package.json已添加
"engines": { "npm": ">=7.0.0" },
安装时如果npm版本不对,会明确报错。
据我所知,peerDependencies是不会自动安装的,dependencies才会自动安装。
我试了一下16.6.0的node版本,不会安装 peerDependencies
mkdir test && cd test
npm init -y && npm install @opentiny/ng
cd node_modules/@opentiny && ls -a
结果,只有@opentiny/ng 依赖,并没有组件的依赖
./ ../ ng/
我也遇到同样的问题,放在peerDependencies 里安装很麻烦。项目用 yarn 和 pnpm 做包管理的时候都不会自动下载这些依赖
Version
1.0.0
Angular Version
15.0.0
Link to minimal reproduction
https://www.npmjs.com/package/@opentiny/ng/v/1.0.0?activeTab=code 中的package.json
Step to reproduce
查看1.0.0版本的pakcage.json即可
What is expected
安装了 @opentiny/ng 之后,不需要安装里面的一大堆的子依赖。
一切@opentiny/ng有关的依赖定义成 dependencies,而非 peerDependencies。
What is actually happening
一般项目都是把所有组件库安装到node_modules,然后按需引入。 安装了 @opentiny/ng 之后,还需要安装里面的一大堆的子依赖(共有109个!!!),项目pacakage.json变得特别多、特别复杂、特别难以维护。
一般讲的是按需“引入”组件,按需构建,而非按需“安装”组件依赖。
Any additional comments (optional)
No response