Три варианта использования npm для обновления пакетов зависимостей
1. Использование основных команд
- Просмотр глобально установленных пакетов
npm list -g --depth 0
- Посмотреть установочный пакет
packageName
Информация о последней выпущенной версии
npm view | info packageName version
- Просмотр пакетов удаленной установки
packageName
Вся выпущенная информация о версии
npm view | info packageName versions
- Проверить наличие устаревших пакетов
npm outdated [packageName]
Описание информации о версии
Package
Показать имя пакета. Если используется--long / -l
то он по-прежнему показывает, что пакет принадлежитdependencies
ещеdevDependency
Current
Текущая версия установки пакета зависимостей
Wanted
согласно сpackage.json
Последний номер версии, который правило префикса версии пакета может обновить
Latest
Номер последней версии пакета [самый последний по умолчанию, это зависит от системы управления пакетами разработчика]
Location
расположение пакета зависимостей в дереве зависимостей, где он находится
Значение цвета шрифта пакета
-
красный
package.json
Пакеты зависимостей, которые можно обновить с помощью правила префикса версии пакета -
желтый
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)
- -S
npm update packageName (-D | -S)
Разница между npm i и npm update
Описано ниже:
-
package
Представляет файл управления версиями зависимостей package.json. -
lock
Указывает, что package-lock.json блокирует файл версии зависимости.
-
lock
Файл существует
-
npm i
последуетlock
Установите соответствующую версию пакета, она не будет автоматически обновлена- изменить вручную
package
в соответствующем пакете,lock
последуетpackage
Спецификация версии префикса обновлена до последней версии,package
Версия ручная версия без изменений
- изменить вручную
-
npm update
последуетpackage
Соответствующая спецификация обновления префикса версии пакета установлена до последней версии.-
package
Измените номер версии соответствующего пакета в [последняя версия спецификации префикса иlock
То же самое без изменений, и разница изменена] -
lock
Соответствующий номер версии пакета изменяется в
-
-
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
-
npm update [packageName]
будет обновляться синхронноpackage-lock.json
Версия соответствующего пакета в файле, пакет npm переустанавливать не нужно
npm-проверка обновлений и npm-проверка
-
Они в основном одинаковы, но есть определенные различия в некоторых интерактивных выражениях в процессе обновления.
-
возобновить
package.json
Инсталляционный пакет в файле можно обновить, но соответствующий пакет обновляться не будетpackage-lock.json
Версия соответствующего пакета в файле -
Зависимости необходимо переустановить с помощью следующей команды:
rm -rf package-lock.json && npm i
Ссылка на ссылку