如何检查Angular是否在生产服务器与本地主机上运行

s_k*_*les 6 typescript angular

我希望Angular 4使用的一些变量是不同的,具体取决于我是在生产服务器上还是在本地主机上运行应用程序进行开发。我怎样才能做到这一点?对于node.js,我使用环境变量,但是我不确定是否可以对Angular Web应用程序使用类似的环境变量。在没有明确设置然后部署的情况下将Angular设置为生产的最佳方法是什么?

Jot*_*edo 7

如果你叫enableProdMode()例如在main.ts文件的方法,你可以导入isDevMode,从@angular/core检查的角度应用程式在PROD MOD运行与否。

例如

import { Component, isDevMode} from '@angular/core';

@Component({...})
export class HomePageComponent {
  constructor() {
    if(isDevMode()){
        console.log("created new HomePageComponent");
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

这是检查应用程序模式的一种方法。

但是与环境值更紧密相关的是angular-cli生成的环境文件。使用这些文件,您可以配置将根据启动实时服务器/构建源的模式设置的值。您可以在以下链接中找到更多信息