方法一:修改源码后提MR,让作者合并更新版本
此方法流程较长,着急的话等不及作者合并
- 将仓库 fork 到自己的 github 中
- 将项目 clone 到本地
- 修改源码
- push 到自己的远端仓库git push
- 向 fork 的源仓库提交MR
- 等待管理员员合并并发布到 npm 上
- 更新 package.json中对应的版本号
- 重新 yarn
方法二:下载源码修改后放在自己的仓库,修改 package.json 文件引入路径
- 将仓库 fork 到自己的 github 中
- 将项目 clone 到本地
- 修改源码
- push 到自己的远端仓库
- 更新 package.json中包对应的地址
"dependencies": {
"@tarojs/components": "git+http://xx.com/taro-components.git",
}
- 重新 yarn
方法三:使用 patch-package
- 安装 patch-package
npm i patch-package -S
- 修改package.json 文件如下
"scripts": {
+ "postinstall": "patch-package"
}
- 在 node_modules 里面修改依赖包的代码
- 每次修改代码之后执行命令
npx patch-package @tarojs/router
- 第一次使用 patch-package 会在项目根目录生成 patches 文件夹,里面有修改过的文件diff记录
- 其他人拉项目,下载一下新包就会把修改过的文件写在他们本地的 node-modules 中
参考文档: