Угловая подача ng не включает полифилы - IE11 / Edge работает только при запуске ng build --prod - PullRequest
0 голосов
/ 01 октября 2018

Я попытался использовать оба запуска npm и ng serve для этого.Во всех случаях, созданное приложение не работает вообще в IE11 и Edge.

Есть много других проблем, связанных с IE11 и Edge, но это касается только проблемы, связанной с тем, что Angular CLI не может эффективно включать полифиллы при запуске ng serve.

    ng serve

** Angular Live Development Server is listening on localhost:4200, open your browser on http://localhost:4200/ **

Date: 2018-10-01T15:27:24.006Z
Hash: f7ee38fccff1d585e3ed
Time: 12681ms
chunk {main} main.js, main.js.map (main) 119 kB [initial] [rendered]
chunk {polyfills} polyfills.js, polyfills.js.map (polyfills) 452 kB [initial] [rendered]
chunk {runtime} runtime.js, runtime.js.map (runtime) 5.22 kB [entry] [rendered]
chunk {styles} styles.js, styles.js.map (styles) 86.4 kB [initial] [rendered]
chunk {vendor} vendor.js, vendor.js.map (vendor) 7.2 MB [initial] [rendered]
i 「wdm」: Compiled successfully.

Это абсолютнонеобходимо, так как мне нужно сделать мое приложение полностью совместимым с IE11 / Edge, и я не могу собрать для производства, чтобы проверить, работает ли центрирование div.

EDIT1:

Запуск ng serve --prodкажется, на самом деле работает, но, боже мой, это медленно при изменении чего-либо.Все равно хотел бы найти способ обойти это.

1 Ответ

0 голосов
/ 08 апреля 2019

Это может быть немного поздно для вас, но в случае, если кто-то еще обнаружит это ... У меня была похожая проблема, когда мое приложение Angular 7, созданное с нуля с CLI, работало везде, кроме браузера EDGE от Microsoft при запуске из ng serve,(Да, IE 11 сработал, но EDGE не сработал. Иди к черту.)

В любом случае, я нашел эту статью: https://github.com/angular/angular-cli/issues/8596

Комментарий от пользователя clydin предоставил мне исправление (хотя говорили про сафари).Они сказали:

Ошибка связана с тем, что клиентский код динамической перезагрузки сервера разработки (с webpack-dev-server) требует базовой поддержки ES2015.Это не повлияет на сборки (производственные или иные) приложения, так как код активной перезагрузки отсутствует.Функцию прямой перезагрузки можно отключить, если необходимо, с помощью параметра --no-live-reload.Из-за дефекта в Safari 10 включение исходных карт в ng serve (по умолчанию) приводит к аналогичной ошибке.Это не влияет на Safari 11.

Я создал скрипт в моем package.json, и когда я запустил этот скрипт, EDGE работал.Вам также может повезти с этим флагом.

"app-edge": "ng serve --host 0.0.0.0 --disable-host-check --no-live-reload"
...