tldr; Как настроить проект CRA таким образом, чтобы yarn start
давал сборку, совместимую со старым браузером?
Не уверен, что я делаю неправильно, но я по сути использую TypeScript с CRA и хотел бы запустить версию для разработки на более старой Chrome. Чтобы быть точным, это Chrome 53 работает на Smart TV. Поскольку я разрабатываю приложение для запуска на телевизоре и хотел бы протестировать на имеющемся у меня устройстве, крайне важно запустить сборку, совместимую с этим телевизором.
Когда я запускаю текущую версию разработки на Телевизор, браузер жалуется на синтаксическую ошибку. Вероятно, из-за расширенных функций JS, содержащихся в сборке (функции-стрелки, const, ...).
Поэтому первое, что я сделал, - обновил tsconfig.json
до цели es3
вместо того, чтобы в настоящее время он находится по адресу: es5
. Я не ожидал, что это изменит ситуацию, поскольку ES5 должен хорошо работать на Chrome 53.
Затем я попытался настроить browserlist
в package.json
для включения этой версии Chrome, или даже копирование настроек производства в разработку, но безрезультатно. Когда я проверяю JavaScript, сгенерированный на моем рабочем столе, он все еще содержит функции ES6.
Очевидно, я очень незнаком с тем, как TypeScript и CRA (слышно, Вавилон) работают вместе. Я пытался проверить исходный код CRA и извлечь приложение, чтобы объяснить, что мои попытки не работают, но я потерян.
(отмечая, что проект был создан из шаблона TypeScript CRA несколько дней назад go, так что действительно актуально.)