Можно ли использовать ES2017 при использовании ng-packagr? - PullRequest
1 голос
/ 02 апреля 2020

Я поддерживаю библиотеку Angular, которая щедро использует ключевые слова async и await. Отладка получающегося кода JavaScript проблематична при нацеливании на ES5 из-за всего происходящего действия polyfill. Даже при наличии исходных карт отладчик TypeScript часто теряется и начинает шагать по лабиринту полифилла, который является сгенерированным JavaScript кодом.

Для локальной разработки в этой библиотеке я могу изменить target, указанный в От tsconfig.json до ES2017, так что async и await не заменяются на полифилы при генерации кода JavaScript, позволяют отладчику выполнять код без проблем. После внесения изменений библиотека затем упаковывается с использованием ng-packagr и интегрируется в другое приложение.

Иногда библиотека сталкивается с проблемами при использовании вместе с этим приложением, которые нелегко воспроизводятся в среде разработки библиотеки. Я хотел бы отладить такие проблемы тем же способом, то есть путем изменения target на ES2017 перед упаковкой, что позволяет мне легко проходить по коду с помощью async / await. Однако, похоже, что ng-packagr игнорирует это и по-прежнему заменяет ключевые слова async и await на полифиллы. Я делаю что-то неправильно? Должен ли я предоставить желаемый target до ng-packagr другим способом?

...