История изменений
Исправление x3al, (текущая версия) :
так понимаю, что файлы склеиваются в определенной последовательности.
Вебпак берёт то, что у тебя написано в entry и пытается это рекурсивно переварить с помощью loader'ов. JS он умеет из коробки (но многие включают babel вместо изкоробочного).
Вебпак пройдёт по каждому import'у (или require) и пропустит их через loader, которые подходят под тип импортируемого файла. Глобально доступные вещи (вроде jquery), которые не импортируются/странно импортируются, подключаются отдельно, гугль скажет, как именно. При этом вебпак с loader'ами переварит ВСЁ, что ты хочешь включить в бандл, будь это js, jsx, typescript, es-next (тут всё понятно), css, less, scss (включит прямо в бандл с JS если нет ExtractTextPlugin, вытащит в отдельный файл если есть. Да, он пройдёт по каждому импорту), каждый шрифт и каждый background из этих стилей (некоторые loader'ы конфигурябельны на уровне «инлайнить до X байт, остальное отдельным файлом», но он сам скопирует этот файл в директорию с выхлопом) и так далее. При желании — можно импортировать, скажем, html (строкой, angular-шаблоном, underscore-шаблоном, да чем угодно, для чего найдёшь loader).
Суть — в том, что он рекурсивно пройдёт от каждого entry и вытащит только то, что ему нужно (импортируется) и будет жаловаться каждый раз когда не найдёт loader хоть для чего-то.
Ну и оно настраивабельнее, чем всякие хипстерские rollup'ы. Плата за это — медленная работа.
Исправление x3al, :
так понимаю, что файлы склеиваются в определенной последовательности.
Вебпак берёт то, что у тебя написано в entry и пытается это рекурсивно переварить с помощью плагинов. JS он умеет из коробки (но многие включают babel вместо изкоробочного).
Вебпак пройдёт по каждому import'у (или require) и пропустит их через loader, которые подходят под тип импортируемого файла. Глобально доступные вещи (вроде jquery), которые не импортируются/странно импортируются, подключаются отдельно, гугль скажет, как именно. При этом вебпак с loader'ами переварит ВСЁ, что ты хочешь включить в бандл, будь это js, jsx, typescript, es-next (тут всё понятно), css, less, scss (включит прямо в бандл с JS если нет ExtractTextPlugin, вытащит в отдельный файл если есть. Да, он пройдёт по каждому импорту), каждый шрифт и каждый background из этих стилей (некоторые loader'ы конфигурябельны на уровне «инлайнить до X байт, остальное отдельным файлом», но он сам скопирует этот файл в директорию с выхлопом) и так далее. При желании — можно импортировать, скажем, html (строкой, angular-шаблоном, underscore-шаблоном, да чем угодно, для чего найдёшь loader).
Суть — в том, что он рекурсивно пройдёт от каждого entry и вытащит только то, что ему нужно (импортируется) и будет жаловаться каждый раз когда не найдёт loader хоть для чего-то.
Ну и оно настраивабельнее, чем всякие хипстерские rollup'ы. Плата за это — медленная работа.
Исходная версия x3al, :
так понимаю, что файлы склеиваются в определенной последовательности.
Вебпак берёт то, что у тебя написано в entry и пытается это рекурсивно переварить с помощью плагинов. JS он умеет из коробки (но многие включают babel вместо изкоробочного).
Вебпак пройдёт по каждому import'у (или require) и пропустит их через плагины, которые подходят под тип импортируемого файла. Глобально доступные вещи (вроде jquery), которые не импортируются/странно импортируются, подключаются отдельно, гугль скажет, как именно. При этом вебпак с плагинами переварит ВСЁ, что ты хочешь включить в бандл, будь это js, jsx, typescript, es-next (тут всё понятно), css, less, scss (включит прямо в бандл с JS если нет ExtractTextPlugin, вытащит в отдельный файл если есть. Да, он пройдёт по каждому импорту.), каждый шрифт и каждый background из этих стилей (конфигурябельно на уровне «инлайнить до X байт, остальное отдельным файлом, но он сам скопирует этот файл в директорию с выхлопом) и так далее. При желании — можно импортировать, скажем, html (строкой, angular-шаблоном, underscore-шаблоном, да чем угодно, для чего найдёшь плагин).
Суть — в том, что он рекурсивно пройдёт от каждого entry и вытащит только то, что ему нужно (импортируется).
Ну и оно настраивабельнее, чем всякие хипстерские rollup'ы. Плата за это — медленная работа.