NPM: установка определенной версии пакета
NPM или Node Package Manager — это мощный инструмент, который позволяет вам легко управлять зависимостями, запускать сценарии и организовывать метаданные проекта. Однако его основная цель — помочь вам загрузить и установить пакеты Node из своего репозитория в ваш проект.
Загрузка и установка пакета выполняется с помощью команды NPM install :
$ npm install express + express@4.17.1 added 50 packages from 37 contributors and audited 126 packages in 3.262s found 0 vulnerabilities
Когда вы выполняете команду install , подобную этой, по умолчанию она получает последнюю версию указанного пакета, которая в данном случае v4.17.1 (на момент написания этой статьи).
Но что, если нам нужна другая версия? Возможно, эта последняя версия нарушает нужную нам функцию, или, может быть, в ней есть уязвимость безопасности, которую разработчик еще не удосужился исправить. В таких случаях вы, вероятно, захотите установить конкретную версию пакета, который, как вы знаете, работает или который, как вы знаете, «безопасен».
Для этого мы можем указать версию, используя синтаксис npm install [package]@[version] . Продолжая наш пример выше, мы выполнили бы что-то вроде этого:
$ npm install express@4.16.1 + express@4.16.1 added 48 packages from 36 contributors and audited 121 packages in 2.986s found 0 vulnerabilities
Как видите, NPM установил указанный нами пакет.
С NPM у нас также есть другие варианты для указания версии пакета. Используя каретку ( ^ ) или тильду ( ~ ), мы можем указать последнюю минорную версию или версию патча соответственно. Таким образом, вы можете указать совместимую версию пакета, но все равно получите самую последнюю версию.
Так, например, если вы хотите использовать Express версию 4.16, но версия патча не важна, вы можете использовать тильду, чтобы сообщить NPM и получить последнюю версию патча:
$ npm install express@~4.16.1 + express@4.16.4 added 48 packages from 36 contributors and audited 121 packages in 3.02s found 0 vulnerabilities
Так как мы добавили префикс к версии ~ , NPM получил последнюю версию патча под второстепенной версией 4.16, которая оказалась 4.16.4.
Это хорошо, когда вам не нужна конкретная версия, но вы хотите постоянно обновлять свои зависимости с помощью последних исправлений и исправлений уязвимостей.
Полезные команды для работы с Node.js
Перед тем как рассматривать полезные команды при работе с Node.js, её необходимо установить.
Команды помогают узнать версию Node.js,
node -h — показывает список всех доступных команд Node.js.
node -v , node —version — показывает установленную версию Node.js.
npm -h — показывает список всех доступных команд пакетного менеджера npm .
npm -v , npm —version — показывает установленную версию npm .
Команда npm update npm -g позволяет обновить версию npm .
npm list —depth=0 показывает список установленных пакетов.
Команда npm outdated —depth=0 покажет список установленных пакетов, которые требуют обновления. Если все пакеты обновлены, список будет пустым.
npm install package — позволяет установить любой пакет по его имени. Если при этом к команде добавить префикс -g пакет будет установлен глобально на весь компьютер.
Команда npm i package является укороченной альтернативой предыдущей команды.
Если вы хотите установить конкретную версию пакета, воспользуйтесь префиксом @ с номером версии. Например, npm install package@1.0.1 .
npm uninstall package — удаляет установленный пакет по имени.
Команда npm list package — покажет версию установленного пакета, а команда npm view package version — последнюю версию пакета, которая существует.
Для работы с пакетным менеджером также пригодится файл package.json , который должен лежать в директории, с которой происходит работа в консоли.
Он содержит различные мета-данные, например, имя проекта, версия, описания и автор. Также он содержит список зависимостей, которые будут установлены, если вызвать из этой папки команду npm install .
Кроме этого он ещё имеет скрипты, которые вызывают другие команды консоли. Например, для этого файла вызов команды npm start вызовет запуск задачи Grunt с именем dev . А команда npm run build вызовет скрипт build , который запустит задачу в Grunt с именем build .
Во время работы часто возникает необходимость установить некоторые пакеты. Если установить пакет с префиксом —save , то он автоматически запишется в package.json в раздел dependencies . Такая же команда с префиксом —save-dev запишет пакет в раздел devDependencies .
nvm (илиNode Version Manager) — утилита, которая позволяет быстро менять версии Node.js.
Чтобы её установить, достаточно запустить скрипт
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.0/install.sh | bash
Теперь можно установить последнюю версию Node.js, например, 5.0 с помощью команды nvm install 5.0 . Чтобы начать использовать её, введите команду nvm use 5.0 . Таким образом, можно быстро переключаться между версиями, например, для тестирования.
«Доктайп» — журнал о фронтенде. Читайте, слушайте и учитесь с нами.
Rukovodstvo
статьи и идеи для разработчиков программного обеспечения и веб-разработчиков.
NPM: установка определенной версии пакета
NPM или диспетчер пакетов узлов — это мощный инструмент, который позволяет легко управлять зависимостями, запускать сценарии и организовывать метаданные проекта. Однако его основная цель — помочь вам загрузить и установить пакеты Node из репозитория в ваш проект. Загрузка и установка пакета выполняется с помощью команды установки NPM: $ npm install express + express@4.17.1 добавил 50 пакетов от 37 участников и проверил 126 пакетов в 3.262s, обнаружено 0 уязвимостей При запуске установки
Время чтения: 2 мин.
NPM или диспетчер пакетов узлов — это мощный инструмент, который позволяет легко управлять зависимостями, запускать сценарии и организовывать метаданные проекта. Однако его основная цель — помочь вам загрузить и установить пакеты Node из репозитория в ваш проект.
Загрузка и установка пакета выполняется с помощью команды install NPM:
$ npm install express + [email protected] added 50 packages from 37 contributors and audited 126 packages in 3.262s found 0 vulnerabilities
Когда вы запускаете такую install , по умолчанию она получает последнюю версию указанного пакета, которая в данном случае v4.17.1 (на момент написания).
Но что, если нам понадобится другая версия? Может быть, эта последняя версия нарушает работу нужной нам функции, или, может быть, в ней есть уязвимость в системе безопасности, которую разработчик еще не решил исправить. В подобных случаях вы, вероятно, захотите установить определенную версию пакета, которая, как вы знаете, работает или является «безопасной».
Для этого мы можем указать версию, используя синтаксис npm install [package]@[version] . Продолжая наш пример выше, мы бы выполнили что-то вроде этого:
$ npm install [email protected] + [email protected] added 48 packages from 36 contributors and audited 121 packages in 2.986s found 0 vulnerabilities
Как видите, NPM установил указанный нами пакет.
С NPM у нас также есть другие возможности для указания версии пакета. Используя символ вставки ( ^ ) или тильду ( ~ ), мы можем указать последнюю дополнительную версию или версию исправления, соответственно. Таким образом, вы можете указать совместимую версию пакета, но при этом получить самую последнюю.
Так, например, если вы хотите использовать Express версию 4.16, но версия патча не важна, вы можете использовать тильду, чтобы указать NPM получить последнюю версию патча:
$ npm install [email protected] ~4.16.1 + [email protected] added 48 packages from 36 contributors and audited 121 packages in 3.02s found 0 vulnerabilities
Поскольку мы поставили перед версией префикс ~ , NPM извлек последнюю версию патча под второстепенной версией 4.16, которая оказалась 4.16.4.
Это хорошо, когда вам не нужна конкретная версия, но вы хотите поддерживать свои зависимости в актуальном состоянии с помощью последних исправлений и исправлений уязвимостей.
Для получения дополнительной информации ознакомьтесь с Caret vs Tilde в package.json .
Licensed under CC BY-NC-SA 4.0
Как поменять версию загруженного пакета в NPM
Я разрабатывал electron приложение и обнаружил что Electron.BrowserWindowConstructorOptions ведет себя странно, а именно свойства maxWidth и minWidth просто не работают. Как оказалось это не я тупой, это новый electron не стабилен и теперь мне, в уже написанном, проекте нужно поменять версию electron с 12.0.1 на 11.2.3. Как это сделать? желательно через консоль.
Отслеживать
задан 3 апр 2021 в 16:15
36 8 8 бронзовых знаков
в package.json
3 апр 2021 в 16:21
тогда версия не поменяться, а только у packege.json будет другое содержание
3 апр 2021 в 16:25
надо обновить еще пакеты npm update
3 апр 2021 в 16:26
ну это уже сработает
3 апр 2021 в 16:29
как оказалось я таки тупой потому что свойство maxWidth все еще не работают
3 апр 2021 в 16:29
1 ответ 1
Сортировка: Сброс на вариант по умолчанию
после еще нескольких минут в гугл я понял что можно просто удалить electron и установить его как [email protected] . https://dev-gang.ru/article/npm-ustanovka-opredelennoi-versii-paketa-o9yeyu38qz/
Отслеживать
ответ дан 3 апр 2021 в 16:24
36 8 8 бронзовых знаков
- javascript
- node.js
- npm
-
Важное на Мете
Похожие
Подписаться на ленту
Лента вопроса
Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.
Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.10.27.43697
Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.