Если все модули компонуются в один файл, то чем это будет отличаться от webpack-овского файла? Поддерживают ли такую "компоновку" сторонние JS-плагины? Если мне нужно будет добавить новый плагин во время жизни проекта, нужно заново перекомпоновываться?
Я не в теме, и у меня такие вот вопросы вопросы возникают.
Тут немного каши, про модули, в чат вкинули!
То, о чем расказывал Денис - это именно сборка бандла вебпаком. Т.е. реально нет ничего такого сверхсуперноваторского, кроме того, что ты можешь писать на любом стандарте JS и не париться о совместимости. Сборщик сам подсунет нужные полифилы и сделает твой код совместимым с браузерами.
Что же касается именно модульного js в браузерах, то все новые браузеры поддеорживают подключение модулей.
Очень грубый пример!
Ты используешь бутстрап. Сейчас тебе нужно загрузить всю js часть фрейма, чтобы воспользоваться, нампример, дропдаунами.
Если говорить о модульности, то придйтся подключить не 1 файл бутстрапа, а все. Но!!!! Главный, индексный, файл будет подключен, как обычный js, а остальные - через <script type="module" src=".." />
Таким образом браузер будет иметь в виду, что у тебя есть модули. Он получит заголовки этих файлов, но не скачает их. Затем, в своём JS ты используешь import 'bootstrap-dropdown' и он загружает только этот модуль. В смеси с http/2 получается сверх-быстрое приложение, т.к. ты грузишь скрипты не кучей, а только при необходимости.