这是我的package.json
:
"dependencies": {
[...]
"jquery": "2.2.3",
[...]
}
根据package.json documentation("必须匹配版本完全")当您执行npm install
时,它应该获得版本2.2.3的jQuery。
当我发现在我的node_modules/jquery/dist
文件夹中有一个jquery.js
文件说: jQuery JavaScript Library v3.0.0 (当然,打破了我的一些代码)
这里发生了什么?这是一个错误吗?这是预期的行为,因为其他一些依赖项有一个jQuery@3.0.0子依赖项?
当我将插入符号放在版本号("jquery": "^2.2.3"
)之前时也会出现同样的情况。无法在文档中,在SO或谷歌上找到任何相关信息,所以任何帮助都将不胜感激。
答案 0 :(得分:0)
您是否有npm-shrinkwrap.json
文件,这使得npm忽略对package.json
依赖项的所有更改(devDependencies不受影响)并且具有硬编码的jquery@3.0.0版本?
删除该文件并再次运行npm install
。
如果需要,之后再次运行npm shrinkwrap
以使用新版本号重新创建shrinkwrap文件。