【发布时间】:2020-01-05 16:14:56
【问题描述】:
我有一个 package.json
"dependencies": {
"@babel/core": "7.2.2",
"@babel/preset-env": "7.3.1",
"@babel/register": "7.0.0",
"babel-loader": "8.0.5",
"browser-sync": "^2.26.0",
"@hot-loader/react-dom": "^16.8.6",
"react": "^16.10.1",
"react-dom": "^16.10.1",
"react-hot-loader": "^4.12.13",
"webpack": "^4.41.0",
"glob": "^7.1.6",
"args": "^5.0.1",
"webpack-dev-middleware": "^3.7.2",
"webpack-hot-middleware": "^2.25.0"
},
我有两个构建过程:
构建 A - 标准应用程序。
git clone <myrepo.git>
npm install
npm run build-app
deploy
构建 B - 静态文件
git clone <myrepo.git>
npm install glob args // I want to read this from package.json
npm run build-static
deploy-static
我想要将依赖项分成两组。
原因是安装所有依赖项大约需要 2 分钟。对于第二个构建任务,我只需要不到 10 秒的 2-3 个包。目前,我的构建程序中有npm install glob args 硬编码。我想从同一个 package.json 中读取它。
我不能使用依赖项与依赖项,因为我有一些仅用于开发的依赖项,并使用标志 npm install --production 仅安装所需的依赖项(没有 devDependencies)。
【问题讨论】:
-
将它们拆分为依赖项和devDependencies?然后你可以第二次使用
npm install --only=prod,或者设置NODE_ENV=production自动执行。 -
@jonrsharpe 我想控制基于不同构建类型的依赖关系。我不能使用环境,因为我需要能够在开发、质量保证、生产方面进行各种构建。
-
请edit问题提供此上下文。例如,您的依赖项列表不显示任何
devDependencies。有多少环境?为什么它们有不同的依赖关系? -
这能回答你的问题吗? Install subset of dependencies with npm
标签: javascript node.js