Сравнение семи версий с тильдой / каретой
Скажем, я использую пакет NPM Semver:
const semver = require('semver');
если я сравниваю точную версию с версией тильды / каретки, имеет ли значение какой аргумент имеет тильду / карету? Например:
semver.eq('1.2.3', '^1.2');
или же
semver.neq('~1.3.3', '1.2.8');
Я предполагаю, что вы можете переключать аргументы без каких-либо изменений, но я не уверен на 100%.
1 ответ
Решение
На самом деле semver.eq
не работает с такими диапазонами.
semver.satisfies
Имеет ли значение и позиция?
console.log(semver.satisfies('1.0.0', '^1')) // true
console.log(semver.satisfies('1.2.2', '~1.2.3')) // false
console.log(semver.satisfies('^1.0', '1.0.0')) // Exception
console.log(semver.satisfies('1.2.2', '~1.2.3')) // Exception
console.log(semver.eq('1.0.0', '^1.0.0')) // Exception
console.log(semver.eq('^1.0', '1.2.3')) // Exception
Вот ripl
ссылка, чтобы увидеть