Это 2019 год, мы хотели бы поддерживать IE11, когда у нас нет ничего лучше, чем заняться в наше время, и я должен признать, что я немного сбит с толку всеми доступными полифиллами.
babel-polyfill кажется, рекомендует core-jscore-jses5-shim и es6-shimНасколько я понимаю, все эти вещи должны включать более новую версию Ecmascript, но не патчить остальные. У меня есть пара пользовательских полифилов, например. для поддержки CustomEvent.
Я не думаю, что это что-то меняет, но я использую:
Прямо сейчас в верхней части моего основного скрипта у меня есть:
require('core-js');
Но я все еще получаю:
Object doesn't support property of method 'Symbol(Symbol.iterator)_a.Kr7pt1C'
Что, по-видимому, в основном является неподдерживаемой функцией итерации Ecmascript.
Любые советы о том, что делать на макроуровне проблемы?
Symbol.iterator на самом деле отсутствует полифил "for ... of".
Моя полная конфигурация видна в этом ответе Включить каталог node_modules в Babel 7
Просто используйте babel и транспилируйте код в версию, понятную IE11.
Я изучаю этот вариант.
Вам удалось получить эту работу?
@Jayavel да (последняя строка вопроса содержит ссылку на мою окончательную конфигурацию)



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Поскольку вы используете Babel для транспиляции, вы можете использовать предустановку @babel/preset-env и установить целевую среду IE11*.
Установите пресет: yarn add @babel/preset-env --dev
Настройте свои цели в конфигурации Babel:
{
"presets": [
["@babel/presets-env", {
"targets": {
"browsers": {
"ie": "11"
}
},
}]
]
}
*От документы
@babel/preset-env takes any target environments you've specified and checks them against its mappings to compile a list of plugins and passes it to Babel.
полно опечаток.... для меня тоже, например. имхо должно быть { "presets": [ ["@babel/preset-env", { "targets": { "ie": "11" } }] ] } но: возникают проблемы с поиском и записями в IE11 .... так что даже у меня не работает
Targets.browsers — это строка или массив строк. Чтобы указать цели браузера описанным выше способом, это должно быть "targets": { "ie": "11" }
В официальная документация написано «Чтобы использовать итераторы, вы должны включить Babel полифилл».. Вы можете попробовать установить его с помощью npm install --save @babel/polyfill и использовать с require("@babel/polyfill") в верхней части точки входа в ваше приложение.
The polyfill is provided as a convenience but you should use it with @babel/preset-env and the useBuiltIns option so that it doesn't include the whole polyfill which isn't always needed. Otherwise, we would recommend you import the individual polyfills manually.
Вы также можете попробовать импортировать core-js/fn/symbol/iterator.js.
импорт e-js/fn/symbol/iterator.js в моем polyfills.ts работал как шарм
@Andreas очень гостеприимный, спасибо;) Чем это должно быть полезно?