Npm, Dev зависимость или зависимость, при упаковке всего в один скрипт с помощью веб-пакета и т. Д.? - PullRequest
0 голосов
/ 11 мая 2018

Когда, например, с помощью веб-пакета мы упаковываем все в один файл js, он уже импортирует зависимости в этот файл.в этом случае нам нужна какая-либо зависимость в package.json, или они могут быть все --save-dev?

Пожалуйста, учтите, что я говорю только о разработке и реализации внешнего интерфейса.

Приветствия

Ответы [ 2 ]

0 голосов
/ 11 мая 2018

Это зависит от того, как ваше приложение разворачивается или распространяется. Регулярные зависимости - это то, что нужно приложению во время выполнения. Что-то является зависимостью dev, когда это требуется только для внесения изменений в приложение.

Если сборка веб-пакета должна быть запущена до использования приложения (например, в среде непрерывной интеграции, где приложение создается как часть процесса тестирования и развертывания), то все, что требуется во время сборки, является «обычным» зависимость. В этом случае большинство ваших пакетов будут регулярными зависимостями.

Если вы собираете приложение один раз, а встроенные ресурсы - это то, что распределяется / разворачивается - поэтому сборку не нужно делать заново, прежде чем приложение сможет использоваться - тогда все, что требуется во время сборки, - это 'dev 'зависимость, потому что кому-то, использующему ваш код, не нужно строить заново, если он не вносит изменения в приложение. В этом случае большинство ваших зависимостей будут зависимостями 'dev'.

0 голосов
/ 11 мая 2018

Не имеет значения, где находятся зависимости (я имею в виду devDependencies или обычные зависимости).На что будет смотреть вебпак - это операторы require и import в вашем исходном коде.

Когда devDependencies и зависимости имеют реальное значение, это когда вы публикуете пакет.devdependencies будут просто установлены, если вы запустите вручную npm/yarn install для этого пакета.Если ваш пользователь устанавливает этот пакет, при запуске npm install --save-dev yourpackagename будут установлены только зависимости, которые были в поле dependencies.

TL; TR: Нет, webpack не заботится о том, где находится вашзависимости на package.json.

...