给依赖打补丁的两种方案

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

相关推荐
云枫晖10 分钟前
Webpack系列-Loader
前端·webpack
aggression13 分钟前
代码敲击乐:让你了解前端的动静结合和移动端的适配性
前端
yinuo14 分钟前
深入理解与实战 Git Submodule
前端
骑自行车的码农15 分钟前
React 事件收集函数
前端·react.js
一个处女座的程序猿O(∩_∩)O18 分钟前
Vue CLI 插件开发完全指南:从原理到实战
前端·javascript·vue.js
小蜜蜂dry23 分钟前
JavaScript 原型
前端·javascript
用户904438163246033 分钟前
前端也能玩 AI?用 brain.js 在浏览器里训个 "前后端分类大师",后端同事看了都沉默!
前端
祈祷苍天赐我java之术34 分钟前
什么是Nginx?:掌握高性能 Web 服务器核心技术
服务器·前端·nginx
Achieve前端实验室38 分钟前
【每日一面】async/await 的原理
前端·javascript·面试
姜至43 分钟前
el-calendar实现自定义展示效果
前端·vue.js