修改node_modules避免更新覆盖 patch-package

news/2024/7/10 2:35:04 标签: vue.js, 前端, javascript, vue

说明:直接修改第三方库的代码,会带来团队协作的问题,使用patch-package生成补丁包

什么是 patch-package?

patch-package 是一个基于 Git 的工具,它可以帮助我们对依赖包进行修复补丁。通过创建一个与问题相关的补丁文件,我们可以轻松地更改依赖包的行为而无需直接修改源代码。这个补丁文件会被存储在项目的 patches 目录下,并在安装依赖包时自动应用。

安装和使用 patch-package

首先,我们需要在项目中安装 patch-package。打开终端,进入项目根目录,运行以下命令:

javascript">npm install patch-package --save-dev

安装完成后,我们就可以开始使用 patch-package 来修复依赖包了。

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

javascript"> "scripts": {
  ...
  "postinstall": "patch-package"
  }

找到需要修复的依赖包。在项目的根目录下运行以下命令:

javascript">npx patch-package [package-name]

其中 [package-name] 是需要修复的依赖包的名称。

现在,当我们安装依赖包时,patch-package 会自动应用 patches 目录下的所有补丁文件。

注意事项

1.当依赖包更新时,补丁文件可能需要相应地进行更新或重新创建。
2.本地需要安装git,并且安装路径放置到环境变量当中


http://www.niftyadmin.cn/n/4992258.html

相关文章

微机原理 || 8253接口芯片知识点+4道经典例题+手写解题过程

(二)经典考题: 【例1】: 设8253端口地址为300H~303H,要求计数器2工作在方式5,二进制计数,CLK22MHz,OUT21KHz。试按上述要求完成8253的初始化。 【例2】:选择计数器0工…

Leetcode1090. 受标签影响的最大值

思路:根据值从大到小排序,然后在加的时候判断是否达到标签上限即可,一开始想用字典做,但是题目说是集合却连续出现两个8,因此使用元组SortedList进行解决 class Solution:def largestValsFromLabels(self, values: li…

如何在`Pycharm`中配置基于WSL的`Python Interpreters`,以及配置基于WSL的`Terminal`

文章目录 一、创建pycharm用户并授予sudo权限0. 启动WSL下的CentOS1. 创建pycharm用户并授予sudo权限2. 设置pycharm用户为wsl启动Linux的默认用户3. 重启并重新登录wsl下的CentOS4. 验证pycharm用户的sudo权限 二、创建基于WSL的Python Interpreter1. 添加基于WSL的Python Int…

【Ajax】发送跨域的POST请求时,浏览器会先发送一次OPTIONS请求,然后才发送原本的POST请求

当发送跨域的POST请求时,浏览器会先发送一次OPTIONS请求,这是因为浏览器的同源策略。OPTIONS请求被称为预检请求(pre-flight request),它是CORS(跨源资源共享)机制中的一部分。 预检请求的目的是为了确保实际请求(例如POST、PUT等…

Qt5界面Qt Designer上添加资源图片后,ModuleNotFoundError: No module named ‘rcc_rc‘ 的终极解决方案

在网上找了很久都没弄明白,最后还是自己思考解决了。 起因: 用 Qt Designer 添加资源文件作为背景图,编译 \resource\static\qrc> pyuic5 -o .\xx.py .\xx.ui发现在 xx.py 文件末尾中多了一个语句: import rcc_rc然后运行就…

Jenkins上使用expect脚本实现发布物上传SVN遇到字符集问题

Jenkins上使用expect脚本实现发布物上传SVN遇到字符集问题 编写一个expect脚本实现发布物上传到svn的功能比较简单,可能需要注意一点就是增加文件替换功能,其核心步骤有4步: #从SVN指定路径下载内容 spawn svn co "$svndir" #先删…

四、MySql数据类型

文章目录 一、数据类型(一)数据类型分类(二)数值类型1、tinyint类型2、bit类型3、小数类型(1) float(2)decimal 4、字符串类型(1)char(2&#xff…

前端是leyui后端sqlserver和maraDB进行分页

项目场景&#xff1a; 前端是leyui后端sqlserver和maraDB进行分页,两种数据库在后端分页的不同写法 解决方案&#xff1a; 前端: 定义table,表格的格式在接口返回时进行创建,根据id进行绑定 <div class"layui-tab-item layui-show" style"padding-top: 10…