Я хочу иметь возможность асинхронно загружать зависимости с помощью System.import()
, но без необходимости транспилировать ES6 в ES5 во время рабочего цикла. Я хочу, чтобы эти модули были преобразованы в отдельные модули ES5, которые извлекаются только при необходимости. Я не хочу, чтобы они были частью основного пакета.
Рабочий процесс разработки
Модули эффективно загружаются во время моей производственной сборки, что на самом деле беспокоит, потому что я не хочу включать какие-либо зависимости, допускающие транспиляцию.
У меня есть рабочий процесс, в котором я использую jspm bundle
и jspm unbundle
для переключения между конфигурациями разработки и производства. В моей среде разработки я включаю следующие скрипты:
<script src="jspm_packages/system.js"></script>
<script src="config.js"></script>
<script>
System.import('src/main');
</script>
Производственный рабочий процесс
В продакшене я использую jspm bundle --inject
для внедрения опции bundles
в System.config
. Это эффективно загружает только необходимые файлы:
system.js
config.js
main.bundle.js
Когда я пытаюсь загрузить модуль асинхронно с System.import()
во время производства, он загружается нормально, что означает, что транспиляция происходит в браузере во время производства.
Вопросы
Я могу легко встроить каждый из своих модулей в AMD, но как я могу асинхронно и отдельно получать их с помощью
System.import()
?Я также хочу убедиться, что у браузера как можно меньше накладных расходов, что означает отсутствие каких-либо скриптов, выполняющих транспиляцию. Есть ли способ включить
system.js
, у которого нет возможностей транспиляции?