Node项目中如何安装指定devDependency的全部devDependencies?
安装特定devDependency的全部devDependencies的方法
当然有办法,以下是针对npm和Yarn的具体操作方案:
针对npm(v7+)
如果你的npm版本是7或更高,可以直接通过命令指定安装目标包的devDependencies,即使它已经是你项目的devDependency:
npm install [目标包名] --save-dev --include=dev
比如你要安装eslint的所有devDependencies,就运行:
npm install eslint --save-dev --include=dev
这个命令会自动把目标包的devDependencies也安装到你的项目中,并且更新package.json里的devDependencies。
如果不想修改package.json,可以先获取目标包的devDependencies列表,再批量安装(需bash环境):
npm install --save-dev $(npm view [目标包名] devDependencies | grep -E '^ ".*":' | sed -E 's/ "(.*)":.*/\1/')
针对Yarn
Yarn v2+
可以用--include参数指定安装目标包的devDependencies:
yarn add [目标包名] --dev --include devDependencies
Yarn v1(Classic)
需要先获取目标包的devDependencies列表,再批量安装(需提前安装jq工具解析JSON):
# 先全局安装jq(未安装时执行) npm install -g jq # 批量安装目标包的devDependencies yarn add --dev $(yarn info [目标包名] devDependencies --json | jq -r 'keys[]')
注意:以上方法会将目标包的devDependencies直接添加到你项目的devDependencies中,如果你只是临时需要这些依赖,后续可以手动清理或者用npm uninstall/yarn remove移除不需要的包。
内容的提问来源于stack exchange,提问作者user5507535
相关产品推荐
相关产品推荐

