Проверяет понимание различий между dependencies и devDependencies в package.json и их влияния на установку пакетов.
В package.json есть два основных раздела для зависимостей: dependencies — пакеты, необходимые для работы приложения в production, и devDependencies — инструменты для разработки и сборки (тесты, линтеры, компиляторы). При установке с флагом --production или в CI/CD устанавливаются только dependencies, а devDependencies пропускаются.
Если поменять их местами, то при обычном npm install все пакеты все равно установятся, но при установке в production (например, npm install --production) будут установлены только те, что теперь в dependencies — то есть бывшие dev-инструменты. Рабочие библиотеки окажутся в devDependencies и не будут установлены, что приведет к ошибкам запуска приложения.
// Было
"dependencies": { "express": "^4.18.0" },
"devDependencies": { "jest": "^29.0.0" }
// Стало
"dependencies": { "jest": "^29.0.0" },
"devDependencies": { "express": "^4.18.0" }
// npm install --production установит только jest, express не будетПравильное разделение зависимостей критично для корректной работы приложения в production. Всегда держите рабочие библиотеки в dependencies, а инструменты разработки — в devDependencies, чтобы избежать проблем при деплое.
Уровень
Рейтинг:
4
Сложность:
3
Навыки
JavaScript
Node.js
Ключевые слова
Подпишись на React Developer в телеграм
Frontend developer
Ментор по Frontend
Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства
Записаться на консультацию