给依赖打补丁的两种方案

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

相关推荐
全栈技术负责人3 分钟前
大模型流式输出核心技术:智能 Markdown 渲染引擎方案
前端·javascript·vue.js
码云之上4 分钟前
让聊天机器人学会用工具,星悟接 MCP 的实践
前端·人工智能·前端框架
用户921080262868 分钟前
从单线程到事件循环:彻底理解 JS 的同步、异步、微任务和宏任务
前端
不一样的少年_18 分钟前
明明做了很多事,为什么简历看起来还是没含金量?
前端·后端·招聘
mashang12345678920 分钟前
mac安装SnailGitLite并配置Beyond Compare
前端·macos
雪芽蓝域zzs22 分钟前
第三十四节:用户新增编辑弹窗增加 el‑tree‑select 部门选择器
前端·javascript·vue.js
程序员老赵31 分钟前
Docker 部署 go2rtc:轻松搭建摄像头多协议流媒体平台
前端·docker·直播
酷酷的逗逗乐40 分钟前
前端转 Agent 开发 · 第三节:LangChain 提示词模板
前端
Cache技术分享42 分钟前
516. Java 方法句柄 - 转换(进阶篇·下)
前端·后端
妙码生花42 分钟前
全网 8k star 的 BuildAdmin 正式发布 Golang 版本,这次我们在CRUD赛道杀死了比赛。
前端·后端·ai编程