前言
说起富文本编辑器,大多数都能想到Quill。但是他丑是真的丑,卡是真的卡。上次就想接入一个表格,不是报错就是样式太丑了。
后来我就找到了Tiptap,也有现成的npm包可以使用www.npmjs.com/package/rea… ,但是reactjs-tiptap-editor-playground.vercel.app/ 。在他的演示网址上的输入不知道为什么一卡一卡的。
最近小试了一下,打造自己的Tiptap富文本编辑器。
npm包地址:www.npmjs.com/package/zt-…
演示网址地址:tiptap.xjoker.top/
欢迎使用,bug随便提
正文
接下来看看有哪些东西
- 🧩 双模式编辑体验:Notion 风格与 Headless 顶部工具栏模式
- ✨ 丰富的文本格式化选项(粗体、斜体、下划线、删除线、行内代码)
- 📝 支持标题(H1、H2、H3)、列表(有序/无序)、引用、可高亮代码块
- 🖼️ 图片插入和管理(文件上传、URL 插入、缩放、对齐、描述)
- 📎 附件上传与文件链接(支持文件选择、拖拽上传、类型限制)
- 📊 完整表格支持(插入/删除行列、切换表头、单元格对齐、合并/拆分、删除表格)
- ✅ 任务列表(带复选框的可交互待办事项)
- 🎨 文本颜色和背景高亮
- 🔢 数学公式支持(行内和块级 LaTeX 公式,基于 KaTeX)
- ⚡ 斜杠命令(输入
/快速插入各种内容块) - 🎯 气泡菜单(选中文本时显示格式化工具栏)
- 💻 代码块操作(语言选择、复制、格式化、删除)
- 🔄 撤销/重做支持
- 📐 文本对齐(左对齐、居中、右对齐、两端对齐)
- ↔️ 块级缩进(支持增加/减少段落与标题缩进)
- ⬆️⬇️ 上标/下标支持
- 🌓 浅色/暗色主题与只读禁用状态
- 🌐 国际化(i18n):支持
zh-CN/en-US,工具栏、斜杠命令、弹窗与默认占位文案可本地化 - 🧹 HTML 粘贴清洗(移除高风险标签、事件属性与常见 Office 污染)
- 📄 HTML/DOM 转纯文本工具(与编辑器
getText()一致)
两种模式
传统的富文本形式
使用命令菜单
主题的切换和国际化
行内公式和块级公式
编辑弹窗
表格
表格菜单栏
附件上传
上传弹窗
图片上传
上传弹窗
代码块
结语
感兴趣可以安装一下试试