我正在参加跨端技术专题征文活动,详情查看:juejin.cn/post/710123…
前言:
随着Taro 生态的逐渐强大,Taro的开发者和Taro使用者 越来越多,但随着而来的也在社区看到许多问题,等待这个大家的修复。
我们作为Taro 早期的使用者,可能会想
- 为Taro 的发展贡献一份自己的力量
- 可以看
第一节:# Taro 贡献指南、单步调试配置 - Taro 接受各种形式的贡献,无论是提交一个重大改动,还是反馈一个问题或参加一次讨论,都能强化 Taro 的网络效应,让 Taro 变得越来越好用
- 可以看
- 调试Taro 框架代码,
- 可以看
第二节:link npm 包
- 可以看
- 如果是遇到Taro的问题,又不好快速升版本,可以打补丁
- 可以看
第三节:patch-package
- 可以看
一、Taro 贡献指南、单步调试配置
# Taro 贡献指南
# Taro 仓库概览
# Taro 单步调测配置
当我们按照上面的步骤拉取Taro代码、安装完依赖, 就可以继续 使用 link 来调试 taro npm 包了
二、link npm 包
我们在本地开发npm模块时,一般需要解决本地模块的调用测试,
比如现在开发模块A, 需要在自己的应用B里导入并使用。
那么我们就可以通过npm link的方式,将模块A链接到B对应的node_modules下面。
以修改
@tarojs/router为例
1. 生成软链 yarn link
在 Taro 项目 taro/packages/taro-router 目录下 执行yarn link
把包链接到全局
我之前已经link 过了,所以会有下面的提示
2. yarn link "@tarojs/router"
这样我们的实际项目中就能使用 Taro 原项目中的
3. yarn unlink "@tarojs/router"
删除我们上面设置 @tarojs/router的软链
三、npm 包打补丁(修改 node_modules 中的源码的方式)
1. 方式一、直接在 node_modules 中修改
这样每次 npm install 安装依赖后
都需要再次手动修改一次,在团队协作、代码发布部署 会有很大的不便
2. 方式二、将npm 包 拷贝一份,修改后重新上传为新 npm 包
将npm 包 拷贝一份,修改后重新上传为新 npm 包,然后再引用。
这样做也有很多不便,比如自己单独封装既繁琐又耗时,而且还会造成项目看起来比较臃肿。
3. 方式三、patch-package(推荐)
patch-package让应用程序使用者可以立即对 npm 依赖项进行修复。
对于我们这些生活在最前沿的人来说,这是一个重要的创可贴。
官方文档:# npm: patch-package
以修改 @tarojs/router 为例
npx patch-package @tarojs/router
会生成如下图这样的一个文件
在 package.json 文件中的 scripts 中加入 "postinstall": "patch-package"
这样 执行完
npm install就会立即执行postinstall的 patch-package