tiptap 在指定位置插入内容
insertContentAt
方法会在指定的位置或范围内插入一段 HTML 或节点。如果提供了范围,新内容将替换给定范围内的原有内容。
参数
position: number | Range
插入位置或范围的标识,可以是数字(字符位置)或 Range 对象。
value: Content
要插入的内容,可以是 HTML 字符串或节点。
options: {string: any}
updateSelection
: 控制是否将光标移动到新插入的内容上。parseOptions
: ProseMirror 会解析传入的内容。如果你想定制解析过程,可以传递parseOptions
,然后由 ProseMirror 处理。
使用示例
editor.commands.insertContentAt(12, "<p>Hello world</p>", {
updateSelection: true,
parseOptions: {
preserveWhitespace: "full",
},
});
这段代码会在编辑器中第 12 个字符处插入一个段落标签 <p>Hello world</p>
,同时更新光标位置,并保持全角空格的原样。