使用npm 工作区,我有一个像这样的文件夹结构
+-- package.json
+-- package-lock.json
+-- client
| `-- package.json
+-- shared
| `-- package.json
`-- server
`-- package.json
通常,在为 nodejs 应用程序创建生产构建时,我会运行npm ci --only=production然后复制node_modules到构建工件中。我不确定在使用工作区时如何做类似的事情。
如果我运行npm ci --only=production --workspace server它,它会将依赖项拆分为./node_modules和./server/node_modules。也许我应该将两者都复制(合并?)node_modules到构建工件中?
另一种选择可能是复制./package-lock.json并./server/package.json进入一个新目录并运行npm ci --only=production. 它似乎确实有效,但我对 npm 了解不足,无法知道这是否是个好主意。
要求是:
node_modules应该只包括所选包的生产依赖项- 依赖版本应该由
package-lock.json.