j'utilise Angular (4 je pense) avec TypeScript et zone.js (0.8.4). J'importe zone.js via le fichier "polyfills.ts". Quand je regarde à l'intérieur du code source de zone.js, il y a un code comme celui-ci:
var isDisableIECheck = _global['__Zone_disable_IE_check'] || false;
Ma question est, comment puis-je définir cette variable dans _globals?
Merci
global
est window
objet dans un navigateur, comme on peut le voir ici:
(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 () {
...
});
afin que vous puissiez définir la variable comme ceci:
window['__Zone_disable_IE_check'] = true;
Mais vous devez faire cela avant que zone.js
soit chargé. Si vous chargez zone.js
dans index.html
, ajoutez ce qui suit:
<script>
window['__Zone_disable_IE_check'] = true;
</script>
<script src="node_modules/zone.js/dist/zone.js"></script>
Dans mon cas, j'ai dû décommenter la ligne suivante dans le fichier polyfills:
(window as any).__Zone_enable_cross_context_check = true;
Projet Angular version: Angular 6.0.1