← 戻る

ProseMirror/tiptapのrenderHTMLにおける0(hole)の意味


renderHTMLの0とは

tiptap(ProseMirror)の renderHTML で返す配列の 0“hole” と呼ばれ、子要素(コンテンツ)が挿入される位置を示す。

// Mark拡張の例
renderHTML({ HTMLAttributes }) {
  // 0 = ProseMirrorの"hole"(子要素が挿入される位置)
  return ['a', HTMLAttributes, 0];
}

配列の構造

['タグ名', 属性オブジェクト, 0]
  │         │              └─ 子要素の挿入位置(hole)
  │         └─ HTML属性
  └─ 出力するHTML要素

0 がないとコンテンツが描画されない。Mark(インライン装飾)では必須。