isDevMode / enableProdMode error :Cannot enable prod mode after platform setup
isDevMode / enableProdMode error :Cannot enable prod mode after platform setup
我刚刚将我们的项目升级到 Angular 4.1.0。这还包括将 webpack 升级到 2.2.1,将 ngx-boostrap 升级到 1.9.2 以及其他软件包升级。
升级所有这些后,我在开发模式下使用 webpack 开发服务器测试了所有内容,一切正常。然后我尝试了一个生产 webpack 构建。构建工作正常,但在 运行 连接我们的网站后,我立即收到错误 'Cannot enable prod mode after platform setup'.
使用 Chrome 开发工具进行调查后,我发现 ngx-bootstrap/utils/warn-once.js 在启动期间调用了 isDevMode()。这发生在 main.ts 中调用 enableProdMode() 之前。 angular 代码在检查后不允许更改模式,因此抛出错误。那部分我明白了。
但是,我对 webpack 的了解仅限于让它适用于我们的项目,仅此而已。我不知道这里出了什么问题。是:
1) ngx-bootstrap 在启动时不应该调用 isDevMode()。
2) 我的 webpack 配置不正确,对 isDevMode 的调用应该发生在 main.ts 为 运行 之后(但是 none 我们的任何代码都已更改,因为这是升级前一切正常。
3) 其他
抱歉,这是一个模糊的问题。只是对webpack了解不够,问得更准确些。任何帮助将不胜感激。
谢谢
我在升级到 Angular 4.3.4 时遇到了同样的问题。我做了两件事来修复它:
- 升级了全局安装的
@angular/cli
以匹配项目 package.json 中的版本。我使用 @angular/cli
1.4.0,但您可能需要 Angular 4.1.0 的旧版本,我不确定。
- 使用该 CLI 版本生成了一个新项目,并将生成的项目的
package.json
、.angular-cli.json
、tsconfig.json
和 main.ts
与正在升级的项目进行了比较。
将 ngx-bootstrap 更新到 1.9.3,此版本已修复该问题。
我刚刚将我们的项目升级到 Angular 4.1.0。这还包括将 webpack 升级到 2.2.1,将 ngx-boostrap 升级到 1.9.2 以及其他软件包升级。
升级所有这些后,我在开发模式下使用 webpack 开发服务器测试了所有内容,一切正常。然后我尝试了一个生产 webpack 构建。构建工作正常,但在 运行 连接我们的网站后,我立即收到错误 'Cannot enable prod mode after platform setup'.
使用 Chrome 开发工具进行调查后,我发现 ngx-bootstrap/utils/warn-once.js 在启动期间调用了 isDevMode()。这发生在 main.ts 中调用 enableProdMode() 之前。 angular 代码在检查后不允许更改模式,因此抛出错误。那部分我明白了。
但是,我对 webpack 的了解仅限于让它适用于我们的项目,仅此而已。我不知道这里出了什么问题。是:
1) ngx-bootstrap 在启动时不应该调用 isDevMode()。
2) 我的 webpack 配置不正确,对 isDevMode 的调用应该发生在 main.ts 为 运行 之后(但是 none 我们的任何代码都已更改,因为这是升级前一切正常。
3) 其他
抱歉,这是一个模糊的问题。只是对webpack了解不够,问得更准确些。任何帮助将不胜感激。
谢谢
我在升级到 Angular 4.3.4 时遇到了同样的问题。我做了两件事来修复它:
- 升级了全局安装的
@angular/cli
以匹配项目 package.json 中的版本。我使用@angular/cli
1.4.0,但您可能需要 Angular 4.1.0 的旧版本,我不确定。 - 使用该 CLI 版本生成了一个新项目,并将生成的项目的
package.json
、.angular-cli.json
、tsconfig.json
和main.ts
与正在升级的项目进行了比较。
将 ngx-bootstrap 更新到 1.9.3,此版本已修复该问题。