Class: CodeNode
@lexical/code.CodeNode
層次結構
-
↳
CodeNode
構造函式
constructor
• new CodeNode(language?
, key?
): CodeNode
參數
名稱 | 類型 |
---|---|
language? | null | string |
key? | string |
返回值
覆蓋
定義於
packages/lexical-code/src/CodeNode.ts:90
函式
canIndent
▸ canIndent(): false
返回值
false
覆蓋
定義於
packages/lexical-code/src/CodeNode.ts:315
collapseAtStart
▸ collapseAtStart(): boolean
返回值
boolean
覆蓋
定義於
packages/lexical-code/src/CodeNode.ts:319
createDOM
▸ createDOM(config
): HTMLElement
在對應過程中調用,以確定要插入到 DOM 中的節點。
此函式必須返回一個 HTMLElement。嵌套元素不受支持。
在更新生命周期的此階段,請勿嘗試更新 Lexical EditorState。
參數
名稱 | 類型 | 描述 |
---|---|---|
config | EditorConfig | 在對應過程中允許訪問像 EditorTheme(以應用類別)等事物。 |
返回值
HTMLElement
覆蓋
定義於
packages/lexical-code/src/CodeNode.ts:97
exportDOM
▸ exportDOM(editor
): DOMExportOutput
控制此節點如何序列化為 HTML。這對於 Lexical 和非 Lexical 編輯器之間的複製和粘貼,或具有不同命名空間的 Lexical 編輯器很重要,此情況下主要的傳輸格式是 HTML。如果您通過 $generateHtmlFromNodes 序列化為 HTML,這也很重要。您還可以使用此函式來構建自己的 HTML 渲染器。
參數
名稱 | 類型 |
---|---|
editor | LexicalEditor |
返回值
覆蓋
定義於
packages/lexical-code/src/CodeNode.ts:137
exportJSON
▸ exportJSON(): SerializedCodeNode
控制此節點如何序列化為 JSON。這對於共享相同命名空間的 Lexical 編輯器之間的複製和粘貼很重要。如果您將 JSON 序列化為某個地方的持久存儲,也很重要。參見 Serialization & Deserialization。
返回值
覆蓋
定義於
packages/lexical-code/src/CodeNode.ts:227
getIsSyntaxHighlightSupported
▸ getIsSyntaxHighlightSupported(): boolean
返回值
boolean
定義於
packages/lexical-code/src/CodeNode.ts:338
getLanguage
▸ getLanguage(): undefined
| null
| string
返回值
undefined
| null
| string
定義於
packages/lexical-code/src/CodeNode.ts:334
insertNewAfter
▸ insertNewAfter(selection
, restoreSelection?
): null
| ParagraphNode
| TabNode
| CodeHighlightNode
參數
名稱 | 類型 | 預設值 |
---|---|---|
selection | RangeSelection | undefined |
restoreSelection | boolean | true |
返回值
null
| ParagraphNode
| TabNode
| CodeHighlightNode
覆蓋
定義於
packages/lexical-code/src/CodeNode.ts:237
setLanguage
▸ setLanguage(language
): void
參數
名稱 | 類型 |
---|---|
language | string |
返回值
void
定義於
packages/lexical-code/src/CodeNode.ts:327
updateDOM
▸ updateDOM(prevNode
, dom
, config
): boolean
當節點更改並且應根據更新中可能發生的任何更改更新 DOM 時調用。
返回 "true" 將導致 lexical 卸載並重新創建 DOM 節點(通過調用 createDOM) 。如果元素標籤發生變化,則需要這樣做。
參數
名稱 | 類型 |
---|---|
prevNode | CodeNode |
dom | HTMLElement |
config | EditorConfig |
返回值
boolean
覆蓋
定義於
packages/lexical-code/src/CodeNode.ts:111
clone
▸ clone(node
): CodeNode
克隆此節點,創建一個具有不同鍵的新節點並將其添加到 EditorState(但不附加到任何地方!)。所有節點必須實現此函式。
參數
名稱 | 類型 |
---|---|
node | CodeNode |
返回值
覆蓋
定義於
packages/lexical-code/src/CodeNode.ts:86
getType
▸ getType(): string
返回此節點的字串類型 。每個節點必須實作此函式,並且在編輯器上註冊的節點中必須是唯一的。
返回值
string
覆蓋
定義於
packages/lexical-code/src/CodeNode.ts:82
importDOM
▸ importDOM(): null
| DOMConversionMap
返回值
null
| DOMConversionMap
覆蓋
ElementNode.importDOM
定義於
packages/lexical-code/src/CodeNode.ts:152
importJSON
▸ importJSON(serializedNode
): CodeNode
控制如何從 JSON 反序列化此節點。這通常是樣板,但提供了節點實作與序列化介面之間的抽象,這在您對節點架構進行重大更改(例如添加或刪除屬性)時可能很重要。參見 序列化與反序列化。
參數
名稱 | 類型 |
---|---|
serializedNode | SerializedCodeNode |