Полный цикл в digital

Установка пакетов NPM

Существует два способа установки пакетов npm:

  1. Локально пакеты устанавливаются в каталог node_modules родительского каталога. Владельцем каталога является текущий пользователь
  2. Глобально устанавливаются в каталог {prefix}/lib/node_modules/, владельцем которого является root, префиксом в данном случае обычно является каталог /usr/ или /usr/local. Это значит, что вам надо использовать sudo для глобальной установки пакетов, что может повлечь ошибки с полномочиями при разрешении сторонних зависимостей, а также создает проблему для безопасности

Локальная установка

Если вы хотите использовать пакеты в проекте, вам нужно воспользоваться локальной версией. Будет создан каталог node_modules в текущей папке проекта и туда скачаются указанные пакеты в раздел dependencies:

npm install имя_пакета

Если нужно скачать пакет в раздел devDependencies:

npm install имя_пакета --save-dev

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

  1. dependencies предназначен для установки пакетов необходимых для работы сайта
  2. devDependencies предназначен для установки пакетов необходимых для разработки сайта
  3. peerDependencies используется для указания зависимостей, которые должны быть установлены разработчиком совместно с вашим пакетом. Отличие peerDependencies от первых двух зависимостей заключается в том, что они не будут автоматически установлены при установке вашего пакета с помощью пакетного менеджера

Есть команда которая установит все пакеты из dependencies:

npm install --production

Есть команда которая установит все пакеты из devDependencies:

npm install

Глобальная установка

Устанавливайте пакет глобально, если вы хотите его использовать как самостоятельную утилиту с командной строки, подключить к проекту глобальный пакет не получиться:

npm install -g имя_пакета

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

  • Изменить права доступа к каталогу, который npm использует по умолчанию
  • Изменить каталог по умолчанию для npm
  • Установить node c помощью пакетного менеджера

Вывод списка установленных пакетов

Вывести список установленных пакетов, можно с помощью команды:

npm list --depth 0

--depth 0 это уровень вложенности наиболее поверхностный, --depth 1 покажет зависимости.

Чтобы вывести список глобально установленных пакетов, запускаем ту же команду только с флагом -g:

npm list -g --depth 0

Для того что бы убрать дубликаты пакетов и найти уязвимости, запускаем команду:

npm dedupe

Обновление пакетов

Для того что бы вывести устаревшие и отсутствующие пакеты, используем команду:

npm outdated

Если у нас много старых пакетов, то можно запустить npm update, чтобы обновить наши пакеты до последней возможной версии в соответствии с нашим package.json. Версия указана в столбце wanted.

npm update

Если мы используем символ ^ перед нашими версиями в package.json, то основная версия не будет обновляться. В целом это хорошо, так как при обновлении до новой основной версии могут возникнуть критические изменения.

Если мы хотим обновить всё до последней версии, можем использовать инструмент npm-update-all:

npx npm-update-all

Куда устанавливаются пакеты

Установленная библиотека попадет в папку node_modules. Если у библиотеки есть зависимости, они также будут установлены в эту папку как отдельные библиотеки.

Библиотеки, установленные через npm, можно подключать к HTML файлу. Но делать этого не стоит, так как они представляют собой модули. Такие библиотеки следуюет подключать особым образом.

Перенос проекта

Папка node_modules занимает много места и содержит много мелких файлов. Поэтому, когда вы заливаете свой проект на хостинг или даете проект коллеге, вам не стоит отдавать папку с библиотеками. Легко можно установить библиотеки, прописанные в файле package.json, инициализировать установку прописанных библиотек можно одной командой:

npm install
Заполните форму уже сегодня!
Для начала сотрудничества необходимо заполнить заявку или заказать обратный звонок. В ответ получите коммерческое предложение, которое будет содержать индивидуальную стратегию с учетом требований и поставленных задач
Работаем по будням с 9:00 до 18:00. Заявки, отправленные в выходные, обрабатываем в первый рабочий день до 12:00.
Спасибо, ваш запрос принят и будет обработан!
Эйч Маркетинг