未处理的承诺拒绝:`(窗口|全局).Promise`已被覆盖

时间:2017-09-19 16:24:17

标签: angular typescript polyfills zone.js

我的polyfills.ts文件包含:

import 'core-js/es6';
import 'core-js/es7/reflect';
require('zone.js/dist/zone');

现在我经常(但并不总是)得到这个错误:

  

未处理的承诺拒绝:Zone.js检测到ZoneAwarePromise (window|global).Promise已被覆盖。   最有可能的原因是在Zone.js之后加载了Promise polyfill(加载zone.js时不需要Polyfilling Promise api。

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

  

我该如何解决这个问题?

您提供的代码很好,即以下是正确的顺序:

import 'core-js/es6';
import 'core-js/es7/reflect';
require('zone.js/dist/zone');
  

现在我经常(但并不总是)

您可能正在导入某些模块有时以错误的顺序执行此操作。

答案 1 :(得分:0)

此问题已由https://github.com/angular/zone.js/pull/899修复,在下一版zone.js(0.8.19)中,错误将消失。