Префикс semver определяется конфигурацией save-prefix
. Значением по умолчанию является каретка (^
), которую можно проверить, выполнив следующую команду npm config
:
npm config get save-prefix
К сожалению, npm install
Команда не имеет возможности указать это, поэтому вам нужно сделать следующее:
Установить значение save-prefix
в тильду (~
), выполнив:
npm config set save-prefix="~"
Установите пакет, выполнив:
npm i example-package@1.8.0 --save
Примечание: Тильда (~
) не должна быть включена в установку команда.
Наконец, установите значение save-prefix
обратно на его значение по умолчанию, то есть каретку (^
), запустив:
npm config delete save-prefix
Примечание: Вы не сделали бы этот последний шаг, если бы хотели, чтобы все будущие npm install
использовали префикс тильды (~
) вместо каретки (^
).
Приведенные выше шаги добавят следующую запись в package.json
:
"example-package" : "~1.8.0"
Обратите внимание на тильду ~
вместо каретки по умолчанию ^
Вы можете использовать оператор &&
для объединения вышеупомянутых указанные команды в составную команду. Например:
npm config set save-prefix="~" && npm i example-package@1.8.0 --save && npm config delete save-prefix