下调NPM包版本时,如何处理包之间的依赖关系?

我目前用的是Webpack是4.x,我想回退到3.x,于是我把package.json中的^4.41.4改成了^3.0.0。

我担心其它包有平行依赖(我术语可能用的不对),比如说webpack-cli、webpack-dev-server、css-loader这些包要改成什么版本啊?

我知道NPM版本兼容性问题挺坑的,现在我调低了一个包的版本,那其它包要如何对应下调呢?

已解决 悬赏分:0 - 解决时间 2021-11-27 23:21
反对 0举报 0 收藏 0

回答1

最佳
  • @

    当遇到版本依赖问题时,只能人工处理,包版本太新就降级使用,只要找到合适的版本就可以了。可以利用npm view <pkgname> peerDependencies快速查看peer dependencies,也可以加上版本号使用npm view <pkgname>@version,如果不知道一共有哪些历史版本可以敲npm view <pkgname> versions。npm view的用法见官网文档。

    人工寻找版本是不可避免的,为了提升效率可以:

    • 结合二分法快速缩小范围
    • 然后嫌国内网速慢可以用cnpm替代npm
    • 版本号可以指定一个范围,例如:npm view bootstrap@^4.0.0

    本答案内容摘抄自这里。

    支持 0 反对 0 举报
    2021-11-27 05:11