typeScriptとzone.js(0.8.4)でAngular(4だと思います)を使用しています。 "polyfills.ts"ファイルを介してzone.jsをインポートします。ソースの内部を見るとzone.jsのコード、次のようなコードがあります:
var isDisableIECheck = _global['__Zone_disable_IE_check'] || false;
私の質問は、どうすればこの変数を_globalsに設定できますか?
ありがとう
global
は、次のようにブラウザのwindow
オブジェクトです。
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory() :
typeof define === 'function' && define.AMD ? define(factory) :
(factory());
}(this, <------------ `this` points to `window` in global scope
(function () {
...
});
したがって、次のように変数を設定できます。
window['__Zone_disable_IE_check'] = true;
ただし、これを行う必要がありますbeforezone.js
がロードされます。 zone.js
をindex.html
にロードする場合は、以下を追加します。
<script>
window['__Zone_disable_IE_check'] = true;
</script>
<script src="node_modules/zone.js/dist/zone.js"></script>
私の場合、polyfillsファイルの次の行のコメントを解除する必要がありました。
(window as any).__Zone_enable_cross_context_check = true;
プロジェクトAngularバージョン:Angular 6.0.1