为什么 NPM 会安装另一个指定的版本?

Why does NPM install another version then specified?

我从事一个项目并将其推送到 bitbucket。在我的硬盘需要格式化之后,我将项目拉回到我的硬盘上。但是当我现在执行 npm install 时,它会安装一个与 package.json 包中指定的版本不同的版本?

My package.json file

Output when npm finishes installing

注意反应 v15.5.4 而不是指定的 v15.3.2

NPM 允许您使用语义 versioning specification 指定版本,其中

"react": "^15.3.2",

表示"every minor release of version 15"

只需删除“^”符号即可安装您需要的版本(如果您想接受补丁发布,请更改为“~”)