共用方式為


DialogStateManager class

DialogStateManager 會管理記憶體範圍和路徑解析程式。

備註

MemoryScopes 是具名的根層級物件,這些物件可以存在於對話方塊內容中或關閉關閉狀態。 路徑解析程式允許對應$foo - > dialog.foo 等專案的快捷方式行為

建構函式

DialogStateManager(DialogContext, DialogStateManagerConfiguration)

初始化 DialogStateManager 類別的新實例。

屬性

configuration

取得或設定對話方塊狀態管理員的已設定路徑解析程式和記憶體範圍。

方法

anyPathChanged(number, string[])

檢查是否有任何路徑自水位線以來已變更。

deleteScopesMemory(string)

刪除指定範圍的所有支援記憶體。

deleteValue(string)

從記憶體中刪除屬性

getMemorySnapshot()

取得適合記錄的所有記憶體範圍。

getValue<T>(string, T | () => T)

使用路徑運算式從記憶體取得值。

loadAllScopes()

確定已針對目前回合載入所有記憶體範圍。

parsePath(string, boolean)

將傳入路徑的路徑區段正規化。

saveAllChanges()

儲存對記憶體範圍所做的任何變更。

setValue(string, any)

將記憶體設定為值。

trackPaths(string[])

追蹤變更特定路徑的時機。

transformPath(string)

使用已註冊的路徑轉換器轉換路徑。

version()

取得版本號碼。

建構函式詳細資料

DialogStateManager(DialogContext, DialogStateManagerConfiguration)

初始化 DialogStateManager 類別的新實例。

new DialogStateManager(dc: DialogContext, configuration?: DialogStateManagerConfiguration)

參數

dc
DialogContext

交談目前回合的對話內容。

configuration
DialogStateManagerConfiguration

對話方塊狀態管理員的組態。

屬性詳細資料

configuration

取得或設定對話方塊狀態管理員的已設定路徑解析程式和記憶體範圍。

configuration: DialogStateManagerConfiguration

屬性值

備註

給定對話內容鏈結有一組組組態資訊。 將新組態指派給鏈結內的任何 DialogStateManager,將會更新整個鏈結的設定。

方法詳細資料

anyPathChanged(number, string[])

檢查是否有任何路徑自水位線以來已變更。

function anyPathChanged(counter: number, paths: string[]): boolean

參數

counter

number

要比較的時間計數器。

paths

string[]

要檢查 之 trackPaths () 的路徑。

傳回

boolean

True 是表示 如果自計數器之後有任何路徑變更。

deleteScopesMemory(string)

刪除指定範圍的所有支援記憶體。

function deleteScopesMemory(name: string): Promise<void>

參數

name

string

範圍的名稱。

傳回

Promise<void>

deleteValue(string)

從記憶體中刪除屬性

function deleteValue(pathExpression: string)

參數

pathExpression

string

要移除的分葉屬性。

getMemorySnapshot()

取得適合記錄的所有記憶體範圍。

function getMemorySnapshot(): object

傳回

object

物件,表示所有記憶體範圍。

getValue<T>(string, T | () => T)

使用路徑運算式從記憶體取得值。

function getValue<T>(pathExpression: string, defaultValue?: T | () => T): T

參數

pathExpression

string

要使用的路徑運算式。

defaultValue

T | () => T

(找不到路徑時要使用的選擇性) 預設值。 可能是傳回要使用的預設值的函式。

傳回

T

如果找不到或未指定,則為找不到或未 defaultValue 定義的值。

備註

這一律會傳回記憶體的 CLONE,對結果所做的任何修改都不會影響記憶體。

loadAllScopes()

確定已針對目前回合載入所有記憶體範圍。

function loadAllScopes(): Promise<void>

傳回

Promise<void>

備註

這應該在回合的開頭呼叫。

parsePath(string, boolean)

將傳入路徑的路徑區段正規化。

function parsePath(pathExpression: string, allowNestedPaths?: boolean): string | number[]

參數

pathExpression

string

要標準化的路徑。

allowNestedPaths

boolean

選擇性。 如果 false 接著偵測巢狀路徑,將會導致傳回空白路徑。 預設為 'true'。

傳回

string | number[]

標準化路徑。

備註

的路徑 profile.address[0] 會正規化為 profile.address.0

saveAllChanges()

儲存對記憶體範圍所做的任何變更。

function saveAllChanges(): Promise<void>

傳回

Promise<void>

備註

這應該在回合結束時呼叫。

setValue(string, any)

將記憶體設定為值。

function setValue(pathExpression: string, value: any)

參數

pathExpression

string

記憶體的路徑。

value

any

要設定的值。

trackPaths(string[])

追蹤變更特定路徑的時機。

function trackPaths(paths: string[]): string[]

參數

paths

string[]

要追蹤的路徑。

傳回

string[]

要傳遞至 anyPathChanged 的正規化路徑 ()

transformPath(string)

使用已註冊的路徑轉換器轉換路徑。

function transformPath(pathExpression: string): string

參數

pathExpression

string

要轉換的路徑。

傳回

string

轉換的路徑。

version()

取得版本號碼。

function version(): string

傳回

string

具有版本號碼的字串。