2017-06-15 2 views
0

私はAnglesプロジェクトにHandsontableライブラリを追加したいと思います。 を使用して、私は.angular-cli.jsonのスクリプトセクションにHandsontableを追加しました:(、どうやらAngers-CLIスクリプトにHandsontableを追加するとZoneAwarePromiseが上書きされます

VM473:34309 Unhandled promise rejection Error: Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten. 
Most likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.) 
    at Function.webpackJsonp.../../../../zone.js/dist/zone.js.Zone.assertZonePatched (zone.js:44) 
    at new NgZone (core.es5.js:3757) 
    at PlatformRef_.webpackJsonp.../../../core/@angular/core.es5.js.PlatformRef_._bootstrapModuleFactoryWithZone (core.es5.js:4551) 
    at core.es5.js:4596 
    at run (eval at webpackJsonp.../../../../script-loader/addScript.js.module.exports (addScript.js:9), <anonymous>:34279:22) 
    at eval (eval at webpackJsonp.../../../../script-loader/addScript.js.module.exports (addScript.js:9), <anonymous>:34292:28) 
    at MutationObserver.flush (eval at webpackJsonp.../../../../script-loader/addScript.js.module.exports (addScript.js:9), <anonymous>:91358:9) 
    at ZoneDelegate.webpackJsonp.../../../../zone.js/dist/zone.js.ZoneDelegate.invoke (zone.js:391) 
    at Zone.webpackJsonp.../../../../zone.js/dist/zone.js.Zone.runGuarded (zone.js:154) 
    at MutationObserver.<anonymous> (zone.js:132) 

"scripts": [ 
    "../node_modules/handsontable-pro/dist/handsontable.full.js" 
] 

のWebPACKは、Webアプリケーションをロードするときしかし、私は次のようなエラーに遭遇したんだ、正常にコンパイルデフォルトでpolyfills.tsにインポートされます)がHandsontableの前にロードされます(実際にはpolyfillsバンドルis loaded first)。私は自分の資産フォルダにJSファイルをコピーしてindex.htmlにHandsontableインポートを移動することによって、可能な回避策が見つかりました:

<html> 
    <head> 
    <script src="assets/handsontable.full.js"></script> 
    </head> 
// ... 

目的のため.angular-cli.jsonでスクリプトのセクションがあるのでしかし、これは、ハックのように感じるんそれを使用する。

この問題を解決する方法についてのご意見は高く評価されます。私は同じ問題を持っていた

+0

ここで、zone.jsをインポートしていますか?どんな種類のローダーを使っていますか? – MehulJoshi

+0

@MehulJoshi、上で説明したように、zone.jsはpolyfills.tsに読み込まれます(最初に読み込まれます)。 – tilo

答えて

1

、私はzone.js 0.8.19のリリースをお待ち下さい "main.ts"

+0

main.tsに移動する可能性がありますか? – tilo

+0

これは本当にハッキリと感じます。なぜこれが起こるのかについての説明はありませんか? GitHubやこれに関する問題はなく、ドキュメントには言及していないので、別の要素が必要です。 – IRCraziestTaxi

0

に "polyfill.ts" から "輸入 'zone.js/DIST /ゾーン' を" 移動しました、エラーはなくなります。

関連する問題