web-developer-resources icon indicating copy to clipboard operation
web-developer-resources copied to clipboard

修改 node_moduels 源码的包 patch-package

Open lvisei opened this issue 4 years ago • 0 comments

patch-package

image

1.在 package.json 的 scripts 中增加如下命令:

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

postinstall 是 npm 的钩子,会在依赖包被 install 之后被执行。

2.安装 patch-package

npm i patch-package -D

3.上面两步都做了,就可以去修改 node_modules 里任意第三方包的源码了。

4.修改了源码,随后需要执行以下命令:

npx patch-package [package-name]  # [package-name] 是包名,不需要写路径。

命令执行成功后,会发现项目根目录下多了一个文件夹 patches,该目录下多了文件,即为记录源码修改的文件。 将 patches 目录及文件,提交到代码仓库。

5.后续其他同学不需要做额外操作,直接安装即可,node_modules 下的源码修改会自动更新。

之前已经安装过该第三方包的同学,需要卸载,重新安装一次。

lvisei avatar Jul 14 '20 08:07 lvisei