介面:Mermaid
mermaid.Mermaid
屬性
contentLoaded
• contentLoaded: () => void
類型宣告
▸ (): void
##contentLoaded 當頁面載入時呼叫的回呼函式。此函式會擷取 mermaid 渲染的設定,並呼叫 init 來渲染頁面上的 mermaid 圖表。
回傳
void
定義於
packages/mermaid/src/mermaid.ts:436
detectType
• detectType: (text
: string
, config?
: MermaidConfig
) => string
類型宣告
▸ (text
, config?
): string
偵測圖表文字的類型。
會考量可能存在的 %%init
指令
參數
名稱 | 類型 | 描述 |
---|---|---|
text | string | 定義圖表的文字。例如:mermaid %%{initialize: {"startOnLoad": true, logLevel: "fatal" }}%% graph LR a-->b b-->c c-->d d-->e e-->f f-->g g-->h |
config? | MermaidConfig | mermaid 設定。 |
回傳
string
圖表定義索引鍵
定義於
packages/mermaid/src/mermaid.ts:438
init
• init: (config?
: MermaidConfig
, nodes?
: string
| HTMLElement
| NodeListOf
<HTMLElement
>, callback?
: (id
: string
) => unknown
) => Promise
<void
>
已棄用
請改用 initialize 和 run。
類型宣告
▸ (config?
, nodes?
, callback?
): Promise
<void
>
參數
名稱 | 類型 |
---|---|
config? | MermaidConfig |
nodes? | string | HTMLElement | NodeListOf <HTMLElement > |
callback? | (id : string ) => unknown |
回傳
Promise
<void
>
定義於
packages/mermaid/src/mermaid.ts:431
initialize
• initialize: (config
: MermaidConfig
) => void
類型宣告
▸ (config
): void
用於設定 mermaid 的組態。此函式應在 run 函式之前呼叫。
參數
名稱 | 類型 | 描述 |
---|---|---|
config | MermaidConfig | mermaid 的組態物件。 |
回傳
void
定義於
packages/mermaid/src/mermaid.ts:435
mermaidAPI
• mermaidAPI: Readonly
<{ defaultConfig
: MermaidConfig
= configApi.defaultConfig; getConfig
: () => MermaidConfig
= configApi.getConfig; getDiagramFromText
: (text
: string
, metadata
: Pick
<DiagramMetadata
, "title"
>) => Promise
<Diagram
> ; getSiteConfig
: () => MermaidConfig
= configApi.getSiteConfig; globalReset
: () => void
; initialize
: (userOptions
: MermaidConfig
) => void
; parse
: (text
: string
, parseOptions
: ParseOptions
& { suppressErrors
: true
}) => Promise
<ParseResult
| false
>(text
: string
, parseOptions?
: ParseOptions
) => Promise
<ParseResult
> ; render
: (id
: string
, text
: string
, svgContainingElement?
: Element
) => Promise
<RenderResult
> ; reset
: () => void
; setConfig
: (conf
: MermaidConfig
) => MermaidConfig
= configApi.setConfig; updateSiteConfig
: (conf
: MermaidConfig
) => MermaidConfig
= configApi.updateSiteConfig }>
已棄用
請改用 parse 和 render。如果您的使用案例不符合新的 API,請開啟討論。
定義於
packages/mermaid/src/mermaid.ts:425
parse
• parse: (text
: string
, parseOptions
: ParseOptions
& { suppressErrors
: true
}) => Promise
<ParseResult
| false
>(text
: string
, parseOptions?
: ParseOptions
) => Promise
<ParseResult
>
類型宣告
▸ (text
, parseOptions
): Promise
<ParseResult
| false
>
剖析文字並驗證語法。
參數
名稱 | 類型 | 描述 |
---|---|---|
text | string | mermaid 圖表定義。 |
parseOptions | ParseOptions & { suppressErrors : true } | 剖析選項。 |
回傳
Promise
<ParseResult
| false
>
如果有效,則 diagramType
設定為圖表類型的物件。否則,如果 parseOptions.suppressErrors 為 true
,則為 false
。
參閱
擲回
如果圖表無效,且 parseOptions.suppressErrors 為 false 或未設定,則擲回錯誤。
▸ (text
, parseOptions?
): Promise
<ParseResult
>
參數
名稱 | 類型 |
---|---|
text | string |
parseOptions? | ParseOptions |
回傳
Promise
<ParseResult
>
定義於
packages/mermaid/src/mermaid.ts:426
parseError
• Optional
parseError: ParseErrorFunction
定義於
packages/mermaid/src/mermaid.ts:420
registerExternalDiagrams
• registerExternalDiagrams: (diagrams
: ExternalDiagramDefinition
[], opts
: { lazyLoad?
: boolean
= true }) => Promise
<void
>
類型宣告
▸ (diagrams
, opts?
): Promise
<void
>
用於註冊外部圖表類型。
參數
名稱 | 類型 | 預設值 | 描述 |
---|---|---|---|
圖表 | ExternalDiagramDefinition [] | 未定義 | ExternalDiagramDefinition 的陣列。 |
opts | 物件 | {} | 如果 opts.lazyLoad 為 false,圖表將會立即載入。 |
opts.lazyLoad? | 布林值 | true | - |
返回
Promise
<void
>
定義於
packages/mermaid/src/mermaid.ts:434
registerIconPacks
• registerIconPacks: (iconLoaders
: IconLoader
[]) => void
類型宣告
▸ (iconLoaders
): void
參數
名稱 | 類型 |
---|---|
iconLoaders | IconLoader [] |
返回
void
定義於
packages/mermaid/src/mermaid.ts:439
registerLayoutLoaders
• registerLayoutLoaders: (loaders
: LayoutLoaderDefinition
[]) => void
類型宣告
▸ (loaders
): void
參數
名稱 | 類型 |
---|---|
loaders | LayoutLoaderDefinition [] |
返回
void
定義於
packages/mermaid/src/mermaid.ts:433
render
• render: (id
: string
, text
: string
, svgContainingElement?
: Element
) => Promise
<RenderResult
>
類型宣告
▸ (id
, text
, svgContainingElement?
): Promise
<RenderResult
>
參數
名稱 | 類型 |
---|---|
id | string |
text | string |
svgContainingElement? | Element |
返回
Promise
<RenderResult
>
定義於
packages/mermaid/src/mermaid.ts:427
run
• run: (options
: RunOptions
) => Promise
<void
>
類型宣告
▸ (options?
): Promise
<void
>
run
此函式會遍歷文件,找出其中的圖表定義並渲染它們。
此函式會將處理過的屬性標記上 data-processed 屬性,並忽略已經設定此屬性的找到的元素。這樣 init 函式可以被觸發多次。
渲染 mermaid 圖表
參數
名稱 | 類型 | 描述 |
---|---|---|
options | RunOptions | 可選的執行時設定 |
返回
Promise
<void
>
定義於
packages/mermaid/src/mermaid.ts:432
setParseErrorHandler
• setParseErrorHandler: (parseErrorHandler
: (err
: any
, hash
: any
) => void
) => void
類型宣告
▸ (parseErrorHandler
): void
setParseErrorHandler 可以直接使用以下方式設定 parseError 的替代方法:
mermaid.parseError = function (err, hash) {
forExampleDisplayErrorInGui(err); // do something with the error
};
這適用於無法直接在 mermaid 物件中新增成員的環境 (例如,dart 互操作包裝器)。 (最初 mermaid 沒有 parseError 成員)。
參數
名稱 | 類型 | 描述 |
---|---|---|
parseErrorHandler | (err : any , hash : any ) => void | 新的 parseError() 回呼。 |
返回
void
定義於
packages/mermaid/src/mermaid.ts:437
startOnLoad
• startOnLoad: boolean