给依赖打补丁的两种方案

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

相关推荐
U***49832 分钟前
前端性能优化插件,图片压缩与WebP转换
前端
c***V3239 分钟前
前端构建工具发展,esbuild与swc性能
前端
u***u68510 分钟前
前端构建工具多环境配置,开发与生产
前端
U***e6311 分钟前
前端构建工具迁移,Webpack到Vite
前端·webpack·node.js
Ustinian_31034 分钟前
【HTML】前端工具箱实现【文本处理/JSON工具/加解密/校验和/ASCII/时间戳转换等】【附完整源代码】
前端·html·json
s9123601011 小时前
【Rust】使用lldb 调试core dump
前端·javascript·rust
前端开发呀1 小时前
🔥 99%由 Trae AI 开发的 React KeepAlive 组件,竟然如此优雅!✨
前端·trae
不是鱼1 小时前
Canvas学习笔记(一)
前端·javascript·canvas
我有一棵树2 小时前
React 中 useRef 和 useState 的使用场景区别
前端·javascript·react.js
喵个咪2 小时前
Qt6 QML 实现DateTimePicker组件
前端·qt