#javascript #angular #angular-universal #polyfills #browser-support
Вопрос:
Мой веб-сайт построен с использованием Angular 12 и SSR. но он не работает в браузерах IE или Samsung TV. я добавил эти строки в свои поля.ts.
import "core-js/es/symbol";
import "core-js/es/object";
import "core-js/es/function";
import "core-js/es/parse-int";
import "core-js/es/parse-float";
import "core-js/es/number";
import "core-js/es/math";
import "core-js/es/string";
import "core-js/es/date";
import "core-js/es/array";
import "core-js/es/regexp";
import "core-js/es/map";
import "core-js/es/weak-map";
import "core-js/es/set";
import "core-js/es/reflect";
и изменил целевое свойство в файле ts-конфигурации на es5.
но все равно это не работает.
Есть ли что-нибудь еще, что я должен сделать?
Комментарии:
1. Пожалуйста, опишите свою проблему более подробно. Вы видите какие — то ошибки в консоли?
2. я получаю сценарий 1002: синтаксическая ошибка. и я думаю, что это связано с неподдерживаемым синтаксисом es6, таким как функция стрелки.
Ответ №1:
IE устарел, но вы можете посмотреть на эти ссылки :
- https://angular.io/guide/browser-support#configuring-angular-cli-for-compatibility-with-ie11
- https://github.com/browserslist/browserslist
В файле .browserslistrc вам, вероятно, нужно будет добавить это:
last 1 version
> 1%
IE 11
Samsung
Ответ №2:
Удалите все core-js и попробуйте это в polyfills
import 'core-js';