Выбор ответа Middle Сборщики обновлено
Зачем отдельный чанк для зависимостей
Вопрос
Зачем сборщик выносит код из node_modules в отдельный чанк с хешем в имени?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Зависимости меняются реже кода, и их чанк останется в кеше. Хеш в имени файла зависит от содержимого.
Варианты ответа
- Чтобы браузер загружал зависимости раньше кода приложения и не ждал
- Зависимости меняются реже кода, и их чанк останется в кешеправильный ответ
- Так библиотеки не попадают под tree shaking и не ломаются
- Это требование лицензий open source к распространению
Разбор
Хеш в имени файла зависит от содержимого. Если зависимости между релизами не менялись, чанк с ними получит тот же хеш, и браузер возьмёт его из кеша. Выгода видна, когда код приложения меняется часто, а библиотеки редко.
- Порядок загрузки определяется импортами и
modulepreload, а не тем, что чанк отдельный. - Tree shaking работает и для кода из
node_modules. - Лицензии не требуют отдельного файла.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.