Здесь, в школе Flatiron, мы недавно начали проводить лабораторные работы, в которых используются библиотеки JavaScript. Прежде чем мы начнем лабораторную работу, нам нужно запустить «npm install», чтобы получить эти зависимости. Сначала я запускал эту команду и особо не задумывался об этом. Но через некоторое время я начал задаваться вопросом, что именно это делает и почему я должен это делать. Вот что я узнал.

NPM расшифровывается как Node Package Manager и представляет собой онлайн-репозиторий, где разработчики могут делиться кодом с другими разработчиками. Каждый пакет был написан, чтобы решить небольшую проблему или добавить немного функциональности. Эта идея решения только одной проблемы делает эти библиотеки очень модульными и их можно использовать во многих различных приложениях.

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

Чтобы начать использовать NPM, вам необходимо установить Node.js. После этого вы можете начать установку пакетов. Пакеты могут быть установлены как локально, так и глобально. Вы хотите установить их локально, если они используются создаваемым вами приложением. Если в вашем приложении есть что-то вроде инструкции var ‹variableName› = require(‘‹packageName›’), то этот пакет следует установить локально. Если загружаемый пакет больше похож на инструмент командной строки, его следует установить глобально.

Установка пакетов с помощью NPM довольно проста.

npm install packageName //local install
npm install -g packageName //global install

Обратите внимание, что попытка запустить глобально установленный пакет может привести к ошибкам прав доступа к файлам.

Вместо того, чтобы устанавливать каждый пакет по одному, вы также можете использовать файл package.json, в котором будет список зависимостей, необходимых для приложения, которое вы создаете или используете. Если в каталоге, в котором вы находитесь, находится файл package.json, и вы введете «npm install», то NPM сошлется на этот файл и начнет установку перечисленных в нем пакетов.

При создании собственного приложения вы можете создать файл package.json вручную или использовать npm init для его автоматического создания. При добавлении пакета в ваше приложение у вас есть возможность добавить зависимость к файлу package.json во время его установки.

npm init //creates the package.json file
npm install --save //saves the installed package to the package.json file

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

npm ls //list all local packages
npm ls -g --depth=0 //lists all global packages one level deep
npm update packageName //update the specific package
npm update //update all packages listed in the package.json file
npm outdated //list all packages that can be updated

Удаление пакетов также простое и имеет собственный набор команд.

npm uninstall packageName //uninstall the specific package
npm uninstall packageName --save //uninstall the package and remove it from package.json
npm prune //remove packages that are not listed in the package.json file