зависимости обновления npm

NPM

Три варианта использования npm для обновления пакетов зависимостей

1. Использование основных команд

  • Просмотр глобально установленных пакетов
npm list -g --depth 0
  • Посмотреть установочный пакетpackageNameИнформация о последней выпущенной версии
npm view | info packageName version
  • Просмотр пакетов удаленной установкиpackageNameВся выпущенная информация о версии
npm view | info packageName versions
  • Проверить наличие устаревших пакетов
npm outdated [packageName]

image.png

Описание информации о версии

PackageПоказать имя пакета. Если используется--long / -lто он по-прежнему показывает, что пакет принадлежитdependenciesещеdevDependency

CurrentТекущая версия установки пакета зависимостей

Wantedсогласно сpackage.jsonПоследний номер версии, который правило префикса версии пакета может обновить

LatestНомер последней версии пакета [самый последний по умолчанию, это зависит от системы управления пакетами разработчика]

Locationрасположение пакета зависимостей в дереве зависимостей, где он находится

Значение цвета шрифта пакета

  1. красный package.jsonПакеты зависимостей, которые можно обновить с помощью правила префикса версии пакета

  2. желтый package.jsonЗависимые пакеты, для которых правила префикса версии пакета не подлежат обновлению.

Когнитивная зависимая версия

Соответствующие зависимости проекта обычно хранятся вpackage.jsonВ файле соответствующий номер версии имеет видmojor.minor.patch

majorУказывает на несовместимое критическое изменение API (серьезное)

minorУказывает на функциональные изменения для обратной совместимости (незначительные)

patchОбозначает обратно совместимое исправление (исправлено)

Значение символа префикса номера версии, соответствующего пакету зависимостей

  • *соответствовать последнемуmajorПакет зависимости от версии

  • ^соответствовать последнемуminorПакет зависимости от версии, например:1.1.0Может быть обновлен, чтобы соответствовать всем1.x.xпакет, не будет обновлять соответствие2.x.x

  • ~соответствовать последнемуpatchПакет зависимости от версии, например:1.1.0Может быть обновлен, чтобы соответствовать всем1.1.xпакет, не будет обновлять соответствие1.2.x

  • Отсутствие префикса указывает на фиксированный номер версии, версия не будет обновлена, чтобы соответствовать какой-либо другой версии. [Нужна ручная модификацияpackage.jsonверсия пакета]

2. обновление нпм

  • Обновите указанный пакет установки зависимостей [не обязательно включаяmajorИногда требуются битовые обновленияpackage.jsonВручную измените соответствующий номер версии пакета зависимостей в обновлении]
    • -S dependenciesЗависимая установка (--save) в рабочей среде, установка по умолчанию
    • -D devDependenciesУстановка зависимостей в среде разработки (--save-dev)
npm update packageName (-D | -S)

Разница между npm i и npm update

Описано ниже:

  • packageПредставляет файл управления версиями зависимостей package.json.
  • lockУказывает, что package-lock.json блокирует файл версии зависимости.
  1. lockФайл существует
  • npm iпоследуетlockУстановите соответствующую версию пакета, она не будет автоматически обновлена

    • изменить вручнуюpackageв соответствующем пакете,lockпоследуетpackageСпецификация версии префикса обновлена ​​до последней версии,packageВерсия ручная версия без изменений
  • npm updateпоследуетpackageСоответствующая спецификация обновления префикса версии пакета установлена ​​до последней версии.

    • packageИзмените номер версии соответствующего пакета в [последняя версия спецификации префикса иlockТо же самое без изменений, и разница изменена]
    • lockСоответствующий номер версии пакета изменяется в
  1. lockфайл не существует
  • npm iпоследуетpackage.jsonСоответствующая спецификация обновления префикса версии пакета установлена ​​до последней версии.

    • package.jsonТем не менее номер версии предыдущей спецификации префикса
    • package-lock.jsonОбновление до последней версии по спецификации префикса версии
  • npm updateа такжеnpm iсходство

    • но будет игнорироватьdevDependenciesСоответствующий пакет под установку обновления
    • Добавлен-Dустановит обновлениеdependenciesОбновите и установите под предпосылкойdevDependenciesСоответствующий пакет зависимостей в

3. npm-проверка обновлений

  • Установить зависимости глобальноnpm-check-update
npm install npm-check-update -g
  • Проверить наличие обновляемых модулей
ncu
或
npm-check-update
  • Обновление обновляемых модулей [не рекомендуется обновлять все обновляемые зависимости одновременно] (обновления включают основные битовые обновления)
ncu -u [packageName]

4. npm-проверка

  • Установить зависимости глобальноnpm-check
npm install npm-check -g
  • Просмотр информации об обновляемом пакете
npm-check
  • Выберите и обновите соответствующий пакет зависимостей [выбор пробела, введите обновление]
npm-check -u

Пять, разница между тремя методами

разница:

npm update

  1. npm update [packageName]будет обновляться синхронноpackage-lock.jsonВерсия соответствующего пакета в файле, пакет npm переустанавливать не нужно

npm-проверка обновлений и npm-проверка

  1. Они в основном одинаковы, но есть определенные различия в некоторых интерактивных выражениях в процессе обновления.

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

  3. Зависимости необходимо переустановить с помощью следующей команды:

rm -rf package-lock.json && npm i

Ссылка на ссылку