从 0.11 迁移到 0.12
按以下顺序迁移:先升级依赖,再更新样式入口,将表单状态迁移到 TanStack Form,最后替换已移除的图标导入。每组修改后运行一次应用,避免把样式问题和 API 变化混在一起排查。
从 Blackwork 0.11 升级时,需要调整 Tailwind 样式入口、表单依赖和图标导入。新项目从 快速开始 开始即可。
先升级 Blackwork 和 Tailwind CSS:
Bash
pnpm add blackwork@^0.12 tailwindcss@^4如果项目有使用 blackwork/form,再安装 TanStack Form:
Bash
pnpm add @tanstack/react-form组合 API
DialogTrigger、SheetTrigger 等触发器仍然支持 asChild。子节点使用 <button> 或 Button,样式直接加在按钮上,避免额外的包装元素影响触发器行为。
Button 仍然支持 loading。SheetContent 仍然支持 closeButtonVisible。
表单
blackwork/form 基于 TanStack Form。
- 安装
@tanstack/react-form。 - 确认项目没有其他代码依赖
react-hook-form后,可以将其卸载。 - 按 Form 使用
useAppForm、Form和FieldGroup。
字段布局(Field、FieldLabel、FieldGroup)不依赖任何表单库,可以单独使用。
图标
blackwork/icons 子路径已移除。通用图标从 lucide-react 引入。名称对照见 图标。
样式
Blackwork 0.12 只支持 Tailwind CSS v4。移除 blackwork/tailwind-config 和旧的 Tailwind plugin 配置,在应用样式表改用:
CSS
@import 'tailwindcss';
@import 'blackwork/tailwind.css';迁移完成后,在浅色和深色主题下检查根布局,并确认所有 asChild 触发器仍把属性传给真实的按钮或链接。