2017-01-29 17 views
4

私はこのコードを実行しようとしたとき、私はAngular2 +活字体を使用しています:は、dispatchEventはエラーが実行に失敗した原因「は、dispatchEvent」「のEventTarget」上:パラメータ1はタイプではない「イベント」

var event = new Event('check'); 
window.dispatchEvent(event); 

このコード原因次のエラー:

failed to execute 'dispatchEvent' on 'EventTarget': parameter 1 is not of type 'Event'.

私はすべてを試みたが、これが機能することを見出した:

var event = new CustomEvent('check'); 

問題は、IEではCustomEventがサポートされていないことです。作品

もう一つは、次のとおりです。

var event = new Event('CustomEvent'); 
event.initCustomEvent('check'); 

問題がInitCustomEventが廃止されていることです。

このタイプのエラーを回避するためにできることはありますか?多分、typescriptのどこかで例外を作るでしょうか?または、非難されず、IE Edgeで動作するコードを使用しますか?

答えて

3

解決策が見つかりました。いくつかの活字体の設定について

、新しいイベントは、私たちが、この例のように、二番目のパラメータを挿入した場合にのみ「イベント」のタイプです:

var ev = new Event("check", {"bubbles":true, "cancelable":false}); 
window.dispatchEvent(event); 
+0

クロームコンソールにこれを貼り付ける私は同じエラーを取得します。 – Jacksonkr

関連する問題