给依赖打补丁的两种方案

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

相关推荐
szial5 小时前
JavaScript 的 call、apply 和 bind:如何控制函数调用
开发语言·前端·javascript
CopyCode5 小时前
Agent 开发不是模型训练:一个前端的入门认知
前端·llm·agent
吠品6 小时前
HTTPS 真身:HTTP 套了层 TLS
java·服务器·前端
JYeontu6 小时前
实现一个「曲线滑块验证」功能
前端·javascript·html
Csvn6 小时前
组件库(从 API 契约到 Headless 内核)
前端
deli0076 小时前
为什么最近邻路线总在绕远?2-opt 把 50 城 TSP 缩短了 20.9%
前端
guslegend6 小时前
底层数据设计:读写分离、分库分表与热点数据隔离
前端
Southern Wind6 小时前
AIAgent——第一章:本地 Agent 与 Vue 3 流式全栈实战
前端·javascript·vue.js
可乐鸡翅yeah_6 小时前
HLS 业务 Referer‑Policy 网页元标签引发播放异常排错
前端·javascript·网络·ffmpeg·php·音视频
jj_ccwgw6 小时前
从 0 到 1 搭建 pnpm + Workspaces + Turborepo Monorepo 保姆级指南
前端·node.js