目录
一. 使用场景
cordova-plugin-file-opener2 源码中,含有不支持 Android10 以上的内容
因此,每次重装依赖后,我都需要手动进行以下修改:
android.support.v4.content.FileProvider
👇 👇 👇 👇 👇 👇 👇 👇 👇
androidx.core.content.FileProvider
为了解决重复的 CV 工作,我发现了这个神奇的 npm 依赖 “创可贴” —— patch-package
二. 使用方法
2.1 修改 package.json
"scripts": {
"postinstall": "patch-package"
}
2.2 安装 patch-package
安装要求:npm(>=5) or yarn
可以使用下面两种方法安装,个人推荐 yarn
- npm i patch-package
- yarn add patch-package postinstall-postinstall 【个人推荐】
2.3 修改 node_modules 中的依赖
就像我在使用场景中提到的,安装完所需依赖后,我们开始对 依赖源码 进行修改
2.4 生成 .patch 文件 记录差异
完成 node_modules 的修改后,执行以下命令:
- yarn patch-package package-name 【个人推荐】
- npx patch-package package-name 【npm > 5.2】
其中 package-name 与更改的包的名称匹配,以 使用场景 为例:
- yarn patch-package cordova-plugin-file-opener2
- npx patch-package cordova-plugin-file-opener2
项目第一次使用 patch-package 时,会在根目录中创建一个名为 patch 的文件夹
里面有一个名为 package-name+0.44.0.patch 的文件或其他文件,用于记录修改差异