给依赖打补丁的两种方案

以修改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里锁定版本号,以防包升级后,导致打的补丁不起作用。

相关推荐
铁皮饭盒8 分钟前
还是网页端, 46mb模型, 抠图功能升级了, 抠任意主体, 还是不要显卡, 不要python, 满意吗?
前端·javascript·后端
怕浪猫9 分钟前
Agent 怎么做规划?这道面试题淘汰了 80% 的候选人
前端·面试·agent
YQteamdyq1 小时前
为什么 { ...state } 会悄悄杀掉响应式?yq-sanyi v0.4.2 的三处修复
前端·javascript
Java后端的Ai之路1 小时前
01-React基础教程
开发语言·前端·python·react.js·前端框架
颜进强1 小时前
25 · NestJs DurableProviders 持久化 Provider:把 ContextId 当缓存键
前端·后端·ai编程
爱丶不疚1 小时前
Electron: Sentry 都采集了什么?你知道吗
前端·electron
恋猫de小郭1 小时前
Dart 4.0 要彻底移除 dart:mirrors,Augmentations 应该要来了
android·前端·flutter
流水白开1 小时前
React的Virtual DOM、Diff算法和Fiber
前端·react.js
乘风gg1 小时前
Spec Kit vs OpenSpec vs Superpowers:我为什么最后自己搭了一套
前端·ai编程·claude