何时将 devDependencies 包含在角度构建中

问题描述

我有一个以两种不同方式构建的 Angular 项目 - 用于两种不同的环境(DEV 和 PROD;都在公司服务器上)

我在网上发现了关于何时将 devDependencies(来自 package.json)包含到构建中的不同定义。

def1:仅在本地开发期间 -> 不在运行时

def2:仅在非生产构建时

如果定义 1 是准确的,那么我的问题就过时了。 但是,如果定义 2 为真,那么我的问题是:

这两个命令中的哪一个可以作为 prod 构建?

ng build --base-href /appname/
ng build --prod --base-href /appname/

这个问题是因为我的一些 devDependencies 有被评为不安全的子依赖项(公司内部)。如果 devDependencies 未随任何部署(DEV 或 PROD)一起提供,则没有问题。

解决方法

命令

ng build --prod --base-href /appname/

是您的产品版本。当您运行此构建命令时,您的环境设置将从 src/environments/environment.prod.ts 文件中获取并存储在 /dist 输出文件夹中的应用程序 JavaScript 输出中。

,

devDependenciespackage.json 部分中列出的软件包可帮助您在本地计算机上开发应用程序。您不会将它们与生产应用程序一起部署。

使用

构建您的生产配置
ng build --prod --base-href /appname/

 ng build --configuration=production --base-href /appname/