我在国家预防机制上有奇怪的行为
这是我package.json的一小部分
"devDependencies": {
....
"css-loader": "^0.23.1",
"del": "^2.2.1",
"gulp-autoprefixer": "^3.1.0",
"gulp-clean-css": "^2.0.10",
"gulp-concat": "^2.6.0",
"gulp-rename": "^1.2.2",
"gulp-replace": "^0.5.4",
....
}当我运行npm i时,所有的东西都安装好了。
紧接着,我就撞上了npm i gulp-clean-css@2.0.10。
相同的软件包已经安装,但奇怪的事情,我得到更多的软件包安装时,我希望收到的一切都是最新的。
你知道为什么npm会这么做吗?
如果没有特定的npm i gulp-clean-css@2.0.10,我的构建就会中断,并在特定的安装之后修复。
发布于 2017-06-08 16:01:47
这是因为您使用^字符在package.json中指定包版本,该字符只限制主版本号(x.x.x中的第一个数字)。请参阅https://github.com/npm/node-semver#caret-ranges-123-025-004
当您运行特定的包安装命令时,您将严格地指定一个特定版本(不包括^),这意味着它将准确地获取该包版本。
https://stackoverflow.com/questions/44440416
复制相似问题