通过patch-package创建补丁修改node_modules依赖下的源码

简介: 通过patch-package创建补丁修改node_modules依赖下的源码

通过patch-package创建补丁修改node_modules依赖下的源码

简述

node_modules下是依赖源码,打包的时候是不会打包进去的。但有时候我们需要修改依赖的源码,这个时候,其他人使用npm install会拉取最新的依赖,而把修改的源码覆盖。

解决

1、将整个库提到node-modules外面来,但是这样会使项目十分的臃肿
2、将这部分源码提出来重新封装,这个方法不错,但是需要一定的时间成本,也不太理想
3、这里推荐使用patch-package创建补丁的方法,通过这种方法后,别人使用npm install,就不会有覆盖的风险了。

1、安装patch-package

// 开发测试环境
npm install patch-package --save-dev

// 生产环境
npm install patch-package --save

--save 和 --save-dev简述

2、修改node_modules源码

3、在package.json,将scripts中加入"postinstall": "patch-package",这个是为了npm install的时候自动为依赖包打上我们改过的依赖

"scripts": {
   
   
    "postinstall": "patch-package"
 },

4、修改完依赖后,创建补丁

npx patch-package 依赖名称

// 例如
npx patch-package echarts

这个时候,根目录下会创建一个叫patches的文件,下面的文件就是补丁文件,里面是你修改依赖的最新源码。
image.png

将node_modules删掉,使用npm i 重新安装依赖,再次打开你修改的地方,就会发现并没有被覆盖。

参考:https://zhuanlan.zhihu.com/p/453771807
githab:https://github.com/ds300/patch-package

目录
相关文章
|
4月前
|
JavaScript 前端开发
nodejs实现解析chm文件列表,无需转换为PDF文件格式,在线预览chm文件以及目录,不依赖任何网页端插件
nodejs实现解析chm文件列表,无需转换为PDF文件格式,在线预览chm文件以及目录,不依赖任何网页端插件
|
29天前
node的私服中Verdaccio批量发布和手动发布依赖
node的私服中Verdaccio批量发布和手动发布依赖
38 1
|
2月前
|
JavaScript 前端开发 关系型数据库
分享66个NodeJs系统源码总有一个是你想要的
分享66个NodeJs系统源码总有一个是你想要的
34 1
|
2月前
|
数据采集 JavaScript 前端开发
分享58个NodeJs爬虫源码总有一个是你想要的
分享58个NodeJs爬虫源码总有一个是你想要的
38 4
|
4月前
|
JavaScript 数据可视化 前端开发
【Node.js】低代码平台源码
【Node.js】低代码平台源码
44 0
|
4月前
|
JavaScript 数据可视化 前端开发
【Node.js】低代码管理系统源码:只需点击鼠标,搭建属于你的企业应用
【Node.js】低代码管理系统源码:只需点击鼠标,搭建属于你的企业应用
61 1
|
6月前
|
缓存 资源调度
因node-sass和node版本不匹配导致无法安装依赖
因node-sass和node版本不匹配导致无法安装依赖
108 0
|
9月前
|
JavaScript 数据可视化 前端开发
Node.js低代码管理系统源码:只需点击鼠标,搭建属于你的企业应用
低代码管理系统是一种通过可视化界面和简化的开发工具,使非专业开发人员能够快速构建和管理应用程序的系统。它提供了一套预先定义的组件和模块,使用户可以通过拖放操作来设计应用程序的界面和逻辑。低代码管理系统还提供了自动化的工作流程、数据管理和集成功能,使用户能够快速创建和部署应用程序,而无需编写大量的代码。
78 0
|
9月前
|
C++
下载node-gyp依赖包报错:gyp ERR! find VS msvs_version not set from command line or npm config
就是有一点需要注意,我这里安装vs的时候,可用里面没有vs社区版2017,只有2022,只能安装了2022
|
机器学习/深度学习 编解码 算法
重磅好文透彻理解,异构图上 Node 分类理论与DGL源码实战
重磅好文透彻理解,异构图上 Node 分类理论与DGL源码实战
重磅好文透彻理解,异构图上 Node 分类理论与DGL源码实战