我正在使用nodejs,并且我试图在我的package.json中设置一些预发布版本
我的预发布版本如下:
"version": "0.10.0-rc1"
...
"version": "0.10.0-rc9"
"version": "0.10.0-rc10"
和其他应用程序的package.json类似:
"dependencies": {
"my_app": "~0.10.0",
...
直到v0.10.0-rc9,依赖项解析工作正常,但现在版本v0.10.0-rc10没有被捕获。
有没有人有任何想法解决这个问题? 感谢
答案 0 :(得分:1)
0.10.0-rc.10
我没有在npm上尝试过但使用semver包(npm使用的实际包)我已经复制了你的问题并发现这种格式解决了它。
我的理解是,npm总是将预发布语句排序为字符串,除非它可以被视为整数的整数。 (一个声明用点分隔)
考虑到问题和解决方案,这是有道理的。比较整数时,10大于9,但在比较字符串时," 9" (或" rc9")将大于" 10" (或" rc10"),因为字符串在每个字符的基础上从左到右进行比较。