在 Pages 中使用 TableKit 扩展
Alpha
要在分页编辑器中添加表格,你应该使用来自 @tiptap-pro/extension-pages-tablekit 包的 TableKit 扩展。这能确保与分页功能完全兼容,因为为了在页面间正确拆分表格,我们需要大幅修改表格的行为和布局。
1. 安装 Pages 技术栈
表格、ConvertKit(编辑器的 schema)以及 Pages 本身都作为独立包发布。请安装这三个包:
npm install @tiptap-pro/extension-convert-kit \
@tiptap-pro/extension-pages-tablekit \
@tiptap-pro/extension-pages2. 将 ConvertKit、TableKit 和 Pages 添加到你的编辑器
import { Editor } from '@tiptap/core'
import { ConvertKit } from '@tiptap-pro/extension-convert-kit'
import { TableKit } from '@tiptap-pro/extension-pages-tablekit'
import { Pages } from '@tiptap-pro/extension-pages'
const editor = new Editor({
extensions: [
ConvertKit.configure({ table: false }),
TableKit,
Pages.configure({
/* ... */
}),
],
})为什么要禁用 ConvertKit 的表格
ConvertKit 自带一套表格功能(支持 DOCX,但不适用于分页)。PagesTableKit 的
TableKit 是适用于分页的替代方案,并且接受与 ConvertKit 表格相同的 DOCX 单元格属性。
禁用一个,注册另一个。
最佳实践
在使用 Pages 时,始终使用来自 @tiptap-pro/extension-pages-tablekit 的
TableKit 扩展。不要使用开源的 @tiptap/extension-table 或 ConvertKit 内置的
表格——它们都与 Pages 扩展生成的布局不兼容。
3. 表格功能
- 暴露的 TableKit 扩展工作方式和行为与开源版本完全相同,也可以扩展以满足你的需求。
- 表格会正确分页并能随着文档一同导出为 DOCX。
扩展 Pages 的 TableKit 扩展
从
@tiptap-pro/extension-pages-tablekit 扩展 TableKit 时要小心,因为其布局经过了大幅修改,
你有可能破坏表格拆分逻辑。
4. 下一步
- 探索 Pages 选项 以获得更多布局控制
- 参见 PageKit 指南 以获得更简单的设置方案