我在阅读相关问题时发现了这个问题,但我的问题是如何从开发模式切换到生产模式。这里指出了两种模态之间的一些区别。

在控制台中我可以看到....调用enableProdMode()来启用生产模式。但是,我不确定应该在哪种类型的实例上调用该方法。

有人能回答这个问题吗?


当前回答

你不需要任何环境。Ts或类似的文件将由您的种子项目提供。只要有一个构型。Ts并添加所有需要运行时决策的条目(例如:日志配置和url)。这将适用于任何设计结构,并在未来也有帮助

configuration.ts

export class Configuration {

   isInProductionMode : bool = true;

   // other configuration
   serviceUrl : string = "http://myserver/myservice.svc";
   logFileName : string = "...";
}

//现在在你的启动代码中使用(main。根据种子项目设计提供t或同等材料

import { Configuration } from './configuration';
import { enableProdMode } from '@angular/core';
....
if (Configuration.isInProductionMode)
    enableProdMode();

其他回答

为Angular 2应用启用生产模式的最好方法是使用Angular -cli,并使用ng build——prod来构建应用。这将使用生产配置文件构建应用程序。使用angular-cli的好处是可以在开发时使用ng serve或ng build来使用开发模式,而无需一直修改代码。

你可以通过导入并执行函数来启用它(在调用bootstrap之前):

import {enableProdMode} from '@angular/core';

enableProdMode();
bootstrap(....);

但是这个错误指示您的绑定出了问题,因此您不应该忽略它,而应该尝试找出发生这种情况的原因。

在angular 6.X.X中启用生产模式 转到环境文件

就像这条路径

您的路径:项目>\src\environments\environment.ts

更改生产:false from:

export const environment = {
  production: false
};

To

export const environment = {
  production: true
};

你不需要任何环境。Ts或类似的文件将由您的种子项目提供。只要有一个构型。Ts并添加所有需要运行时决策的条目(例如:日志配置和url)。这将适用于任何设计结构,并在未来也有帮助

configuration.ts

export class Configuration {

   isInProductionMode : bool = true;

   // other configuration
   serviceUrl : string = "http://myserver/myservice.svc";
   logFileName : string = "...";
}

//现在在你的启动代码中使用(main。根据种子项目设计提供t或同等材料

import { Configuration } from './configuration';
import { enableProdMode } from '@angular/core';
....
if (Configuration.isInProductionMode)
    enableProdMode();

我的Angular 2项目没有“main.”Ts”文件提到了其他答案,但它确实有一个“引导”。Ts”文件,这似乎是关于同样的事情。(这种差异可能是由于Angular版本不同造成的。)

在“boot”中的最后一个导入指令之后添加这两行。Ts”对我很管用:

import { enableProdMode } from "@angular/core";
enableProdMode();