You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React中TipTap编辑器传入文本时丢失mark元素的问题求助

React中TipTap编辑器传入文本时丢失mark元素的问题求助

大家好,我最近在做一个带TipTap文本编辑器的React Web应用,需要实现用<mark>元素标记文本片段的功能。我按照文档要求引入了Highlight扩展,本来以为能让编辑器识别<mark>元素,结果遇到了个棘手的问题——当我给编辑器传入带<mark>的初始文本时,这些标记居然直接丢失了,文本变成了毫无格式的普通内容。

下面是我目前的组件代码(部分内容没写完,先贴出已实现的部分):

import { EditorProvider } from '@tiptap/react'; 
import StarterKit from '@tiptap/starter-kit'; 
import Placeholder from '@tiptap/extension-placeholder'; 
import Link from '@tiptap/extension-link';
// 已经导入了Highlight扩展
import Highlight from '@tiptap/extension-highlight';

const MyEditor = () => {
  const extensions = [
    StarterKit,
    Placeholder({
      placeholder: '请输入内容...',
    }),
    Link,
    Highlight, // 也已经在扩展列表里完成注册
  ];

  // 尝试传入的带mark标记的初始内容
  const initialContent = `<p>这是一段<mark>需要高亮标记</mark>的测试文本</p>`;

  return (
    <EditorProvider
      extensions={extensions}
      content={initialContent}
    >
      {/* 这里是编辑器的UI区域,比如菜单栏、编辑框等 */}
    </EditorProvider>
  );
};

export default MyEditor;

我反复核对了Highlight扩展的导入和注册步骤,确认没有遗漏,但就是没法让编辑器正确解析传入的<mark>元素。有没有小伙伴遇到过类似的情况?或者能帮我排查下问题出在哪吗?真的太感谢了!

备注:内容来源于stack exchange,提问作者Michał P.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.13 16:44:37