美文网首页
patch-package修复npm包的bug

patch-package修复npm包的bug

作者: xurna | 来源:发表于2022-11-20 23:04 被阅读0次

    背景

    有时我们会遇到node_modules里面安装的npm包与我们的项目不兼容或者有bug,与其给官方提issue并等待官方把npm包修复,还不如我们自己动手,丰衣足食,在可以本地修复的情况下,可以使用patch-package将修改记录下来,并提交到git仓库,这样其他小伙伴也能安装修复代码,达到同步效果。

    过程

    1. 项目下安装patch-packagenpm包(patch-package安装官方只支持 npm 和 yarn)
    npm install -D patch-package 
    
    1. 进入node_modules中修复npm包
      注意: 要改动的包在 package.json 中必须声明确定的版本,不能有~或者^的前缀。
    2. 执行npx patch-package命令
      比如我修改的npm库是lodash,修改完后,执行如下命令,这时候,根目录会多出patches目录记录第三方包内容的更改。
    npx patch-package lodash
    
    1. package.json的scripts中增加命令
    {   
          "scripts": {     
              "postinstall": "patch-package"   
           }
    }
    

    这样一来,每次安装依赖的时候都会通过 postinstall 脚本自动应用 patches 的修改,解决了团队协作的问题。

    1. 最后,将修改通过git提交上去,其他人pull代码后,执行npm install,就能同步到patch-package的修改了。

    其他:nrm切换npm源

    1. 安装:npm install -g nrm
    2. nrm ls
    1. 使用淘宝源
      nrm use taobao

    相关文章

      网友评论

          本文标题:patch-package修复npm包的bug

          本文链接:https://www.haomeiwen.com/subject/zwhjbrtx.html