Полный цикл в 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 предназначен для установки пакетов необходимых для разработки сайта

Есть команда которая установит все пакеты из 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.
Спасибо, ваш запрос принят и будет обработан!
Эйч Маркетинг