利用pnpm patch给第三方库打补丁
如果在使用第三方库的时候, 发现bug, 但是等不了官方补丁, 可以使用pnpm patch给第三方库打补丁来解决, 类似 git diff, 操作如下:
在package.json所在目录的命令行执行
pnpm patch @jiaminghi/data-view
执行完这个命令后会生成临时文件夹供你编辑, 然后开始编辑这个临时文件夹里的代码, 编辑保存完后, 执行pnpm patch-commit xxx
(如截图所示, 命令行会给出提示, 直接复制执行即可),
执行完命令会在package.json所在目录生成patches文件夹, 里面放的就是patch补丁文件.
最后,在package.json加上配置:
"pnpm": {"patchedDependencies": {"@jiaminghi/data-view@2.10.0" : "patches/@jiaminghi__data-view.patch"}}
下次执行pnpm install
的时候就会自动打上补丁!
PS: 最好关闭vscode后在命令行中执行以上操作, 不然可能提示文件无法删除错误:
pnpm patch-commit: EBUSY: resource busy or locked, rmdir