以修改antd-table-infinity 插件为例,如图所示,要修改插件里代码
第一种方案:文件替换(不推荐)
1) 将这个文件的代码都拷贝出来,并进行修改后存在项目里,我这边是放在了polyfill文件夹下
2) 新建一个脚本文件,并编写脚本进行文件替换
3) 在package.json确定执行脚本的时机:装包后
第二种:patch-package(推荐)
1) 装patch-package包
javascript
yarn add patch-package -D
2) 在node_modules中找到对应的包,并修改相应文件
3)执行命令
javascript
yarn patch-package antd-table-infinity
就会看到项目里多了个patches文件夹,里面有修改前后的对比
4)修改package.json文件
使用第一种方案需要将文件全部拷贝下来,但是只需改一行代码,就很没必要;使用第二种方案完美的解决了这个问题,推荐~
注:最好在package.json里锁定版本号,以防包升级后,导致打的补丁不起作用。