2017-09-04 23 views
16

Mam projekt Angular 4, który działa poprawnie w Chrome. Jednakże nie ładował na IE11 z powodu następującego błędu w polyfills.bundle.js (używam polecenia „build --env ng = prod” budowania miejscu):Błąd Angular 4 w IE11

var exports = module.exports = function (iterable, entries, fn, that, ITERATOR) { 
    var iterFn = ITERATOR ? function() { return iterable; } : getIterFn(iterable); 
    var f = ctx(fn, that, entries ? 2 : 1); 
    var index = 0; 
    var length, step, iterator, result; 
    if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!'); 

iterFn jest niezdefiniowany tu więc błąd Jest rzucony. Proszę doradzić.

+1

Być może należy dodać/odkomentować polyfills z polyfills.ts? –

+0

Dziękuję, Per. To była naprawdę główna przyczyna problemu. – Sergey

Odpowiedz

33

Aby uzyskać lepszą obsługę IE11, musisz dodać tylko niektóre produkty es6 do swoich produktów. Lista jest następująca:

/** IE9, IE10 and IE11 requires all of the following polyfills. **/ 
import 'core-js/es6/symbol'; 
import 'core-js/es6/object'; 
import 'core-js/es6/function'; 
import 'core-js/es6/parse-int'; 
import 'core-js/es6/parse-float'; 
import 'core-js/es6/number'; 
import 'core-js/es6/math'; 
import 'core-js/es6/string'; 
import 'core-js/es6/date'; 
import 'core-js/es6/array'; 
import 'core-js/es6/regexp'; 
import 'core-js/es6/map'; 
import 'core-js/es6/weak-map'; 
import 'core-js/es6/set'; 
+10

Można to zrobić, komentując, wszystkie linie, które są oznaczone jako IE9, IE10 i IE11 polyfills w pliku polyfills.ts –

Powiązane problemy