1.背景
在前端开发中,无论是哪个框架又会存在一个问题,一个插件或者组件库暂时无法满足你的需求,又或者是这个插件或者组件库有比较明显的bug,这时候就需要用到我们的补丁技术,原理:在原有包的基础上,添加一个新的补丁文件,在执行npm install的时候,这个补丁文件会覆盖掉插件原有的文件,即:把修改部分的代码,覆盖在插件源码的相应位置。
2.步骤
2.1 安装patch-package包,patch-package给开发者提供了通过打“补丁”的方式,使得重新安装依赖包时能够保留之前对第三方依赖包的修改的一种解决方案
npm i patch-package --save
2.2 在node_modules中,找到你需要修改的包,直接修改他的源代码,修改完成之后,终端执行命令行
npx patch-package npm包名
2.3 执行完成之后,补丁生成成功会直接在根目录下生成一个补丁文件夹,如下:
2.4 修改完成后,证明补丁生成成功,之后我们需要再每次的npm install中来让这个补丁文件覆盖掉包的源代码,在package.json中加上执行脚本 npx patch-package。如下:
这样就完成了对第三方库的补丁修改技术。如果需要验证的话。也可以直接把node_modules下的对应包删除,重新install一下就可以验证是否覆盖成功了!