我正在编写一个 React 组件库,并且不想捆绑 React,所以我将库添加到peerDependencies
而不是dependencies
.
另外,为了防止出现有关缺少对等依赖项的愚蠢警告,我将相同的库添加到该devDependencies
部分。
那不是 DRY,但固定警告对我来说比 DRY package.json 更重要。
所以问题是:是否有 DRYer 方法可以实现这一目标,或者我实际上遵循 2020 年 5 月的最佳实践?
{
"peerDependencies": {
"react": "^16.9.0",
"react-dom": "^16.9.0",
"tslib": "^1.11.0",
},
"devDependencies": {
"@types/react": "^16.9.0",
"react": "^16.9.0",
"react-dom": "^16.9.0",
"typescript": "^3.8.0"
},
"dependencies": {
// nothing here
}
}
Run Code Online (Sandbox Code Playgroud)
对于 npm >= v7,npm 宣布自动安装peerDependency
软件包。
因此,如果 deps 已在 PeerDependency 部分中列出,则只需从 devDependency 中删除它们,如下所示:
{
"peerDependencies": {
"react": "^16.9.0",
"react-dom": "^16.9.0",
"tslib": "^1.11.0",
},
"devDependencies": {
"@types/react": "^16.9.0",
"typescript": "^3.8.0"
},
"dependencies": {
// nothing here
}
}
Run Code Online (Sandbox Code Playgroud)
对于 npm < 7,请遵循@gcastros 答案。
另请参阅:github 上和npm js 博客上。
归档时间: |
|
查看次数: |
4846 次 |
最近记录: |