Разница между установкой npm и обновлением npm в Node.js

Опубликовано: 26 Июля, 2021

NPM - это своего рода электростанция для Node.js, которая содержит все необходимые модули для бесперебойной работы приложения node.js. Он устанавливается на нашу машину, когда мы устанавливаем Node.js в нашей ОС Windows, Linux или MAC.

Как установить Node на машину? Обратитесь к этой статье.

NPM имеет 580096 зарегистрированных пакетов. Средняя скорость роста этого числа составляет 291 в день, что означает резкое увеличение количества различных типов пакетов, поэтому мы должны каждый раз обновлять наш узел на нашей машине? Ответ - нет! NPM позволяет нам устанавливать сторонние модули на нашу машину в соответствии с потребностями нашей работы.

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

Мы можем получить доступ к сторонним модулям с помощью некоторых предопределенных команд, предоставляемых Node Package Manager, которые приведены ниже:

Первоначальная структура проекта :

Команда npm install : эта команда npm используется для установки сторонних модулей в нашем текущем каталоге. Есть два разных способа использовать эту команду:

  1. Без параметра
  2. С параметром
  • Без параметра: когда мы используем команду npm без параметра, эта команда автоматически загружает все зависимости, которые записаны в файле package.json в нашем каталоге.

Package.json: создайте файл package.json в каталоге и укажите в нем явные зависимости.

 {
  "name": "gfg",
  "версия": "1.0.0",
  "описание": "",
  "main": "index.js",
  "scripts": {
    "test": "echo " Ошибка: тест не указан  "&& exit 1"
  },
  "автор": "",
  "лицензия": "ISC",
  "dependencies": {
    "экспресс": "^ 4.17.1"
  }
}

Запустите команду установки npm:

 нпм я 
или же
npm install

Обновленная структура проекта:

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

  • С параметром: мы можем использовать команду npm install, указав имя стороннего модуля, который мы хотим установить для конкретной работы. Например, давайте загрузим модуль MongoDB для Node.js

Параметр: Параметр может быть именем модуля, который мы хотим установить. или имя папки, в которую мы хотим установить все сторонние модули в каталоге. По умолчанию это папка node_modules, в которой находятся все установленные модули. Эта папка создается автоматически при первой установке любого внешнего модуля.

Синтаксис:

 npm install [-g] [<пакет> ..]
  • Syntax for installing module: Module will get install in the node_modules folder in the present directory.
npm install <module-name>
  • Syntax for installing any module globally: Globally installing means we can access the module without installing that module in a particular directory. For egNodemon module etc.
npm install -g <module-name>
  •  Syntax for change the directory path of modules: This command will change the installing path of the external modules from node_modules to <dirname> folder in the working directory.
npm install <dirname>

Объяснение: После установки любого нового модуля новые пакеты добавляются в папку node_modules, а зависимости обновляются в файле package.json.

  1. Установка модуля с помощью команды npm:
 npm установить mongodb

файл package.json:

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

  1. Без параметра
  2. С параметром
  • Без параметра : обновление npm без параметра работает со всеми глобально установленными пакетами и обновляет все версии глобальных пакетов, доступных на нашей машине.

Синтаксис:

 npm update -g

Обновление модуля nodemon , установленного глобально:

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

В Node.js используются в основном типы зависимостей:

1. Зависимости каретки: когда зависимости, представленные в файле package.json или package.lock.json с ^, называемым символом каретки, называются зависимостями каретки. Эти зависимости обновляются до последней версии, совместимой с этой версией.

 "dependencies": {
  "dep11": "^ 2.2.2"
}

Эта команда обновления npm обновит до 2.3.3 (учтите, что эта версия существует), а 2.3.3 удовлетворит предыдущую версию

2. Зависимости тильды: команда npm update обновит эти зависимости до самой высокой отсортированной версии. Эти зависимости используют символ ~.

 "dependencies": {
  "dep11": "^ 2.2.2"
}

Если мы обновим эту зависимость, в этом случае она будет обновлена до версии 2.2.3.

Разница:

  • Установка npm устанавливает все модули, перечисленные в файле package.json, и их зависимости.
  • npm update обновляет все пакеты в каталоге node_modules и их зависимости.