跳至主要内容

Class: ListItemNode

@lexical/list.ListItemNode

階層

建構子

constructor

new ListItemNode(value?, checked?, key?): ListItemNode

參數

名稱類型
value?number
checked?boolean
key?string

返回值

ListItemNode

覆蓋

ElementNode.constructor

定義於

packages/lexical-list/src/LexicalListItemNode.ts:68

函式

append

append(...nodes): this

參數

名稱類型
...nodesLexicalNode[]

返回值

this

覆蓋

ElementNode.append

定義於

packages/lexical-list/src/LexicalListItemNode.ts:152


canMergeWhenEmpty

canMergeWhenEmpty(): true

確定當此節點為空時,是否可以與插入的第一個節點塊合併。

此函式專門在 RangeSelection.insertNodes 中調用,以確定節點插入期間的合併行為。

返回值

true

範例

// 在 ListItemNode 或 QuoteNode 實作中:
canMergeWhenEmpty(): true {
return true;
}

覆蓋

ElementNode.canMergeWhenEmpty

定義於

packages/lexical-list/src/LexicalListItemNode.ts:415


canMergeWith

canMergeWith(node): boolean

參數

名稱類型
nodeLexicalNode

返回值

boolean

覆蓋

ElementNode.canMergeWith

定義於

packages/lexical-list/src/LexicalListItemNode.ts:388


collapseAtStart

collapseAtStart(selection): true

參數

名稱類型
selectionRangeSelection

返回值

true

覆蓋

ElementNode.collapseAtStart

定義於

packages/lexical-list/src/LexicalListItemNode.ts:270


createDOM

createDOM(config): HTMLElement

在和解過程中調用,以確定要將哪些節點插入到此 Lexical 節點的 DOM 中。

此函式必須返回精確的一個 HTMLElement。嵌套元素不被支持。

請勿在此更新生命週期階段嘗試更新 Lexical EditorState。

參數

名稱類型描述
configEditorConfig允許在和解過程中訪問如 EditorTheme(以應用類別)等內容。

返回值

HTMLElement

覆蓋

ElementNode.createDOM

定義於

packages/lexical-list/src/LexicalListItemNode.ts:74


createParentElementNode

createParentElementNode(): ElementNode

任何需要的父節點的創建邏輯。如果 isParentRequired 返回 true,則應實現此函式。

返回值

ElementNode

覆蓋

ElementNode.createParentElementNode

定義於

packages/lexical-list/src/LexicalListItemNode.ts:411


exportDOM

exportDOM(editor): DOMExportOutput

控制此節點如何序列化為 HTML。這對於在 Lexical 和非 Lexical 編輯器之間,或在具有不同命名空間的 Lexical 編輯器之間進行複製和粘貼很重要,在這種情況下,主要的傳輸格式是 HTML。如果您因其他原因需要序列化為 HTML,也很重要,可以通過 $generateHtmlFromNodes 進行。您也可以使用此函式來構建自己的 HTML 渲染器。

參數

名稱類型
editorLexicalEditor

返回值

DOMExportOutput

覆蓋

ElementNode.exportDOM

定義於

packages/lexical-list/src/LexicalListItemNode.ts:134


exportJSON

exportJSON(): SerializedListItemNode

控制此節點如何序列化為 JSON。這對於在共享相同命名空間的 Lexical 編輯器之間進行複製和粘貼很重要。如果您需要將其序列化為 JSON 以進行持久儲存,也很重要。請參見 序列化與反序列化

返回值

SerializedListItemNode

覆蓋

ElementNode.exportJSON

定義於

packages/lexical-list/src/LexicalListItemNode.ts:142


extractWithChild

extractWithChild(child, selection): boolean

參數

名稱類型
childLexicalNode
selectionBaseSelection

返回

boolean

覆蓋函式

ElementNode.extractWithChild

定義於

packages/lexical-list/src/LexicalListItemNode.ts:392


getChecked

getChecked(): undefined | boolean

返回

undefined | boolean

定義於

packages/lexical-list/src/LexicalListItemNode.ts:320


getIndent

getIndent(): number

返回

number

覆蓋函式

ElementNode.getIndent

定義於

packages/lexical-list/src/LexicalListItemNode.ts:342


getValue

getValue(): number

返回

number

定義於

packages/lexical-list/src/LexicalListItemNode.ts:309


insertAfter

insertAfter(node, restoreSelection?): LexicalNode

插入一個節點作為此 LexicalNode 的下一個兄弟節點。

參數

名稱類型預設值說明
nodeLexicalNodeundefined要插入在此節點之後的節點。
restoreSelectionbooleantrue操作完成後是否嘗試將選擇恢復到適當位置。

返回

LexicalNode

覆蓋函式

ElementNode.insertAfter

定義於

packages/lexical-list/src/LexicalListItemNode.ts:212


insertNewAfter

insertNewAfter(_, restoreSelection?): ParagraphNode | ListItemNode

參數

名稱類型預設值
_RangeSelectionundefined
restoreSelectionbooleantrue

返回

ParagraphNode | ListItemNode

覆蓋函式

ElementNode.insertNewAfter

定義於

packages/lexical-list/src/LexicalListItemNode.ts:258


isParentRequired

isParentRequired(): true

該節點是否需要一個必需的父節點。在複製和粘貼操作期間,用於規範可能孤立的節點。例如,沒有 ListNode 父節點的 ListItemNodes 或者沒有 ParagraphNode 父節點的 TextNodes。

返回

true

覆蓋函式

ElementNode.isParentRequired

定義於

packages/lexical-list/src/LexicalListItemNode.ts:407

remove

remove(preserveEmptyParent?): void

將此 LexicalNode 從 EditorState 中移除。如果該節點未重新插入到其他地方,Lexical 垃圾收集器最終將清理它。

參數

名稱類型說明
preserveEmptyParent?boolean如果為假,則在刪除操作後,如果父節點是空的,則該父節點也將被刪除。這是默認行為,受其他節點啟發法則影響,例如 ElementNode#canBeEmpty

返回

void

覆蓋函式

ElementNode.remove

定義於

packages/lexical-list/src/LexicalListItemNode.ts:242


replace

replace<N>(replaceWithNode, includeChildren?): N

將此 LexicalNode 替換為提供的節點,並可選擇性地將替換節點的子節點轉移到新的節點中。

類型參數

名稱類型
Nextends LexicalNode

參數

名稱類型說明
replaceWithNodeN用來替換此節點的節點。
includeChildren?boolean是否將此節點的子節點轉移到替換的節點。

返回

N

覆蓋函式

ElementNode.replace

定義於

packages/lexical-list/src/LexicalListItemNode.ts:168


setChecked

setChecked(checked?): void

參數

名稱類型
checked?boolean

返回

void

定義於

packages/lexical-list/src/LexicalListItemNode.ts:333


setIndent

setIndent(indent): this

參數

名稱類型
indentnumber

返回

this

覆蓋函式

ElementNode.setIndent

定義於

packages/lexical-list/src/LexicalListItemNode.ts:359


setValue

setValue(value): void

參數

名稱類型
valuenumber

返回

void

定義於

packages/lexical-list/src/LexicalListItemNode.ts:315


toggleChecked

toggleChecked(): void

返回

void

定義於

packages/lexical-list/src/LexicalListItemNode.ts:338


updateDOM

updateDOM(prevNode, dom, config): boolean

當節點發生變化並應更新 DOM 時調用,從而使其與更新過程中的任何變化保持一致。

返回 "true" 將導致 Lexical 卸載並重新創建 DOM 節點(通過調用 createDOM)。例如,如果元素標籤更改,則需要執行此操作。

參數

名稱類型
prevNodeListItemNode
domHTMLElement
configEditorConfig

返回

boolean

覆蓋函式

ElementNode.updateDOM

定義於

packages/lexical-list/src/LexicalListItemNode.ts:85


clone

clone(node): ListItemNode

克隆此節點,創建具有不同鍵的新節點並將其添加到 EditorState 中(但不附加到任何位置!)。所有節點都必須實現此函式。

參數

名稱類型
nodeListItemNode

返回

ListItemNode

覆蓋函式

ElementNode.clone

定義於

packages/lexical-list/src/LexicalListItemNode.ts:64


getType

getType(): string

返回此節點的字符串類型。每個節點都必須實現此函式,並且在編輯器中註冊的節點之間必須是唯一的。

返回

string

覆蓋函式

ElementNode.getType

定義於

packages/lexical-list/src/LexicalListItemNode.ts:60


importDOM

importDOM(): null | DOMConversionMap

返回

null | DOMConversionMap

覆蓋函式

ElementNode.importDOM

定義於

packages/lexical-list/src/LexicalListItemNode.ts:116


importJSON

importJSON(serializedNode): ListItemNode

控制此節點如何從 JSON 反序列化。這通常是樣板代碼,但提供了一個在節點實現與序列化接口之間的抽象層,這在對節點模式進行重大更改(例如添加或刪除屬性)時可能非常重要。請參見 Serialization & Deserialization

參數

名稱類型
serializedNodeSerializedListItemNode

返回

ListItemNode

覆蓋函式

ElementNode.importJSON

定義於

packages/lexical-list/src/LexicalListItemNode.ts:125


transform

transform(): (node: LexicalNode) => void

在編輯器初始化期間,將返回的函式註冊為節點上的轉換。大多數此類使用情況應通過 LexicalEditor.registerNodeTransform API 來解決。

實驗性 - 使用風險自負。

返回

fn

▸ (node): void

參數

| 名稱 | 類型 | |

:------ | :------ | | node | LexicalNode |

返回

void

覆蓋函式

ElementNode.transform

定義於

packages/lexical-list/src/LexicalListItemNode.ts:101