Что делают флаги --save с установкой npm

Я вижу инструкции по установке пакета с

npm install <package_name>

или

npm install <package_name> --save

или

npm install <package_name> -- save dev-save

в чем разница между этими вариантами?

2 ответов


установка npm принимает 3 эксклюзивных, необязательных флага, которые сохраняют или обновляют версию пакета в основном пакете.в JSON:

- S, --save: пакет появится в ваших зависимостях.

- D, --save-dev: пакет появится в ваших devDependencies.

- O, --save-необязательно: пакет появится в ваших optionalDependencies.

при использовании любой из вышеперечисленных опций для сохранения зависимостей в вашем пакете.json, есть дополнительный, необязательный флаг:

- E, --save-exact: сохраненные зависимости будут настроены с точной версией, а не с помощью оператора диапазона semver по умолчанию npm. Далее, Если у вас есть npm-shrinkwrap.json тогда он также будет обновлен.

<scope> является необязательным. Пакет будет загружен из реестра, связанного с указанной областью. Если реестр не связан с данной областью, предполагается реестр по умолчанию. См. раздел область npm.

Примечание: Если вы не включите @ - символ в имя области, npm будет интерпретировать это как репозиторий GitHub вместо этого, см. ниже. Имена областей также должны сопровождаться косой чертой.

примеры:

npm установить sax --сохранить npm установить githubname / reponame установка npm @myorg/privatepackage узел установки npm-нажмите --save-dev npm install dtrace-provider --save-необязательно НПМ установить удобочитаемое-трансляция-Сохранить-Сохранить-точно

Примечание: Если существует файл или папка с именем <name> в текущем рабочий каталог, затем он попытается установить это и только попытается получить пакет по имени, если он недействителен.

(из официальных документов) https://docs.npmjs.com/cli/install


npm install <package_name> без опции просто устанавливает пакет, но не обновляет зависимости, перечисленные в вашем пакете.формат JSON.

npm install <package_name> --save устанавливает пакет и обновляет зависимости в вашем пакете.формат JSON.

npm install <package_name> ---save-dev обновление devDependencies в свой пакет. Они используются только для локального тестирования и развития.

вы можете прочитать больше на https://docs.npmjs.com/getting-started/using-a-package.json.