Решил перевести большой проект на ES6, используя babel + AMD для модулей. Проект состоит из сотен файлов, которые затем собираются с помощью r.js и других инструментов в один цельный HTML. Поэтому я решил делать переход постепенно.
Проблема в том, что Бабел полностью ломает текущий код, заставляя менять всё сразу.
1. Добавляет вызов define. Такой код:
define(["x", "y"], function() { ... });
Превращается в такой:
define(["exports"], function (exports) {
define(["x", "y"], function() { ... });
});
Кто знаком с AMD знает, что этот код не работает.
2. Скрипты сейчас запрашивают HTML темплейты с помощью requirejs плагина text. Как избежать лапши в коде и, в то же время, позволить r.js собирать проект (т. е. инлайнить HTML в JS для продакшна)?