Javascript NPM和NPM包覆面处理以控制瞬态依赖关系
背景 我似乎无法让npm收缩膜发挥作用。我目前正在使用一个名为传单.zoomslider的传单插件,它依赖于传单0.7.7。我正在尝试升级我的应用程序以使用leafet@1.0.3. 由于zoomslider引入了0.7.7,而我正在导入传单1.0.3,所以两个库都被导入(最终0.7.7将被最后导入,在我的情况下将超过1.0.3) zoomslider似乎在1.0.3中运行良好,我已经向库所有者提交了一个bug,以更新他们的package.json文件 问题 通过谷歌搜索,我找到了npm收缩膜。我执行了以下操作Javascript NPM和NPM包覆面处理以控制瞬态依赖关系,javascript,node.js,npm,leaflet,npm-shrinkwrap,Javascript,Node.js,Npm,Leaflet,Npm Shrinkwrap,背景 我似乎无法让npm收缩膜发挥作用。我目前正在使用一个名为传单.zoomslider的传单插件,它依赖于传单0.7.7。我正在尝试升级我的应用程序以使用leafet@1.0.3. 由于zoomslider引入了0.7.7,而我正在导入传单1.0.3,所以两个库都被导入(最终0.7.7将被最后导入,在我的情况下将超过1.0.3) zoomslider似乎在1.0.3中运行良好,我已经向库所有者提交了一个bug,以更新他们的package.json文件 问题 通过谷歌搜索,我找到了npm收缩膜
npm install -g npm-shrinkwrap
npm install
npm shrinkwrap
这成功创建了我的npm-shrinkwrap.json文件。为了强制传单的暂时依赖项为1.0.3,我手动编辑了npm-shrinkwrap.json文件
leaflet.zoomslider: {
version: 0.7.0,
from: leaflet.zoomslider@0.7.0,
resolved: ...
dependencies: {
leaflet: {
version: 1.0.3
from: leaflet@1.0.3,
resolved: ......
}
}
}
我删除了我的node_modules文件夹,重新安装了npm,并注意到我的应用程序仍然带来了0.7.7和1.0.3的宣传单。事实上,我删除了node_modules文件夹,并在npm-shrinkwrap.json文件中提供了zoomslider和瞬态传单依赖项的虚假版本号,npm安装成功完成,没有出现错误
有什么想法吗