2017-09-11 58 views
6

Angular CLI中,运行build命令时,--target--environment选项之间有什么区别?Angular CLI构建目标与环境

从文档:

纳克构建可以同时指定一个构建目标(--target =生产或--target =发展)和一个环境文件到与该构建中使用(--environment = dev或--environment = prod)。默认情况下,使用开发构建目标和环境。

然而,他们从来没有真正澄清两者之间的区别。

从我可以收集的信息中,--environment标志控制在构建时使用哪个环境文件(environment.ts vs environment.prod.ts)。但那么--target控制什么?

+1

你阅读网页上'--dev'与'--prod'建立的部分?它精确地解释了使用比较其设置的表格以及不可标记生产设置的列表。 – jonrsharpe

+2

这里是上述表格的链接 - https://github.com/angular/angular-cli/wiki/build#--dev-vs---prod-builds –

+0

根据那张表,我的理解是正确的'target'标志不直接*影响关于构建过程的任何事情,而仅仅是设置其他标志的快捷方式?此外,虽然您可以定义其他*环境*,但您无法定义其他*目标*(只有内置的“dev”和“prod”)? –

回答

0

从文档:Build Targets and Environment Files

ng build既可以指定一个构建目标(--target=production--target=development)和一个环境文件到与该版本(--environment=dev--environment=prod)一起使用。默认情况下,使用 开发构建目标和环境。

构建目标设定为生产具有以下效果:

  1. 时间提前编制,这意味着角编译器不会获得包含在最终版本,这意味着更快的渲染,体积小
  2. 捆绑文件的散列
  3. 生成的javascript文件缩小
  4. 角度运行在生产模式下,因此它停止检查每个变化检测两次
  5. 进Web应用程序只有在这种模式下工作