跳转到内容

仓库维护

本页面向仓库贡献者,因此命令统一使用 pnpm。应用开发者请从快速开始进入。

仓库要求 Node.js 26+ 和 pnpm 11:

Terminal window
git clone https://github.com/sep2/vite-plugin-taro.git
cd vite-plugin-taro
pnpm install
pnpm prepare:taro
pnpm build:plugin

pnpm prepare:taro 会从上游 npm 包和 patches 中重新生成 React 19 兼容的 Taro 包。首次检出、更新 Taro 版本或修改 patch 后应重新执行。

路径用途
packages/vite-plugin-taro发布到 npm 的 Vite 插件
packages/create-vite-taro项目生成器及默认模板
packages/taro-react生成的 React 19 兼容 Taro React 包
packages/taro-plugin-framework-react生成的 React 19 兼容框架插件
packages/loan-geniusWX 与 H5 综合示例
packages/native-comp-demo微信原生组件示例
packages/towxml-stream-demoTowxml 原生组件与流式渲染示例
docsAstro Starlight 文档站
Terminal window
pnpm build:plugin
pnpm typecheck
pnpm test

pnpm typecheck 会运行所有工作区中声明的类型检查。需要只检查插件时,运行 pnpm typecheck:plugin

Terminal window
pnpm typecheck:loan-genius
pnpm build:loan-genius:wx
pnpm build:loan-genius:h5
pnpm typecheck:native-comp-demo
pnpm build:native-comp-demo:wx
pnpm typecheck:towxml-stream-demo
pnpm build:towxml-stream-demo:wx
Terminal window
pnpm lint
pnpm format
pnpm dev:docs
pnpm --filter docs build

pnpm format 会执行 Biome 的安全写入。TypeScript 检查使用 tsc

Terminal window
pnpm dev:loan-genius:wx
pnpm dev:loan-genius:h5
pnpm dev:native-comp-demo:wx
pnpm dev:towxml-stream-demo:wx

运行微信目标后,在微信开发者工具中打开对应项目的 dist/wx。运行 H5 目标后,使用 Vite 输出的本地地址。

  • 不要手动编辑 packages/vite-plugin-taro/dist;运行 pnpm build:plugin 重新生成。
  • 不要直接修改 packages/taro-reactpackages/taro-plugin-framework-react 的实现;修改 patches/*@4.2.0-react19.patch 后运行 pnpm prepare:taro
  • 不要手动编辑 CHANGELOG.md;运行 pnpm changelog,或在发布时由 release 命令生成。
  • 根目录的 README.mdREADME.en.md 是插件 README 的来源;pnpm build:plugin 会同步到 packages/vite-plugin-taro

先验证待发布包:

Terminal window
pnpm publish:dry

更新全部包的版本:

Terminal window
pnpm version:bump patch
pnpm version:bump 1.0.0

完整发布流程会更新版本与 changelog、验证包、创建 commit 和 tag,并默认推送:

Terminal window
pnpm release patch
pnpm release 1.0.0

常用选项:

Terminal window
pnpm release prerelease --preid beta
pnpm release patch --dry-run
pnpm release patch --no-push

推送 v*.*.* tag 后,.github/workflows/publish.yml 会通过 npm Trusted Publishing 按依赖顺序发布公开包。不要为该工作流配置 NPM_TOKEN