Bagikan melalui


DialogStateManager class

DialogStateManager mengelola cakupan memori dan pemecah jalur.

Keterangan

MemoryScopes diberi nama objek tingkat akar, yang dapat ada baik dalam konteks dialog atau menonaktifkan status nonaktifkan. Pemecah masalah jalur memungkinkan perilaku pintasan untuk memetakan hal-hal seperti $foo -> dialog.foo

Konstruktor

DialogStateManager(DialogContext, DialogStateManagerConfiguration)

Menginisialisasi instans baru kelas DialogStateManager .

Properti

configuration

Mendapatkan atau mengatur pemecah masalah jalur dan cakupan memori yang dikonfigurasi untuk manajer status dialog.

Metode

anyPathChanged(number, string[])

Periksa untuk melihat apakah ada jalur yang telah berubah sejak marka air.

deleteScopesMemory(string)

Menghapus semua memori cadangan untuk cakupan tertentu.

deleteValue(string)

Hapus properti dari memori

getMemorySnapshot()

Mendapatkan semua cakupan memori yang cocok untuk pengelogan.

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

Dapatkan nilai dari memori menggunakan ekspresi jalur.

loadAllScopes()

Memastikan bahwa semua cakupan memori telah dimuat untuk giliran saat ini.

parsePath(string, boolean)

Menormalkan segmen jalur dari jalur yang diteruskan.

saveAllChanges()

Menyimpan perubahan apa pun yang dilakukan pada cakupan memori.

setValue(string, any)

Atur memori ke nilai.

trackPaths(string[])

Lacak kapan jalur tertentu diubah.

transformPath(string)

Ubah jalur menggunakan transformator jalur terdaftar.

version()

Mendapatkan nomor versi.

Detail Konstruktor

DialogStateManager(DialogContext, DialogStateManagerConfiguration)

Menginisialisasi instans baru kelas DialogStateManager .

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

Parameter

dc
DialogContext

Konteks dialog untuk pergantian percakapan saat ini.

configuration
DialogStateManagerConfiguration

Konfigurasi untuk manajer status dialog.

Detail Properti

configuration

Mendapatkan atau mengatur pemecah masalah jalur dan cakupan memori yang dikonfigurasi untuk manajer status dialog.

configuration: DialogStateManagerConfiguration

Nilai Properti

Keterangan

Ada satu set informasi konfigurasi untuk rantai konteks dialog tertentu. Menetapkan konfigurasi baru ke DialogStateManager apa pun dalam rantai akan memperbarui konfigurasi untuk seluruh rantai.

Detail Metode

anyPathChanged(number, string[])

Periksa untuk melihat apakah ada jalur yang telah berubah sejak marka air.

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

Parameter

counter

number

Penghitung waktu untuk dibandingkan dengan.

paths

string[]

Jalur dari trackPaths() untuk diperiksa.

Mengembalikan

boolean

Benar jika ada jalur yang berubah sejak penghitung.

deleteScopesMemory(string)

Menghapus semua memori cadangan untuk cakupan tertentu.

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

Parameter

name

string

Nama cakupan.

Mengembalikan

Promise<void>

deleteValue(string)

Hapus properti dari memori

function deleteValue(pathExpression: string)

Parameter

pathExpression

string

Properti daun untuk dihapus.

getMemorySnapshot()

Mendapatkan semua cakupan memori yang cocok untuk pengelogan.

function getMemorySnapshot(): object

Mengembalikan

object

Objek yang mewakili semua cakupan memori.

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

Dapatkan nilai dari memori menggunakan ekspresi jalur.

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

Parameter

pathExpression

string

Ekspresi jalur yang akan digunakan.

defaultValue

T | () => T

(Opsional) nilai default untuk digunakan jika jalur tidak ditemukan. Mungkin fungsi yang mengembalikan nilai default yang akan digunakan.

Mengembalikan

T

Nilai yang ditemukan atau tidak ditentukan jika tidak ditemukan dan tidak ada defaultValue yang ditentukan.

Keterangan

Ini selalu mengembalikan KLON memori, modifikasi apa pun pada hasilnya tidak akan memengaruhi memori.

loadAllScopes()

Memastikan bahwa semua cakupan memori telah dimuat untuk giliran saat ini.

function loadAllScopes(): Promise<void>

Mengembalikan

Promise<void>

Keterangan

Ini harus dipanggil di awal giliran.

parsePath(string, boolean)

Menormalkan segmen jalur dari jalur yang diteruskan.

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

Parameter

pathExpression

string

Jalur untuk menormalkan.

allowNestedPaths

boolean

Fakultatif. Jika false maka deteksi jalur berlapis akan menyebabkan jalur kosong dikembalikan. Default ke 'true'.

Mengembalikan

string | number[]

Jalur yang dinormalisasi.

Keterangan

Jalur profile.address[0] akan dinormalisasi ke profile.address.0.

saveAllChanges()

Menyimpan perubahan apa pun yang dilakukan pada cakupan memori.

function saveAllChanges(): Promise<void>

Mengembalikan

Promise<void>

Keterangan

Ini harus dipanggil pada akhir giliran.

setValue(string, any)

Atur memori ke nilai.

function setValue(pathExpression: string, value: any)

Parameter

pathExpression

string

Jalur ke memori.

value

any

Nilai yang akan diatur.

trackPaths(string[])

Lacak kapan jalur tertentu diubah.

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

Parameter

paths

string[]

Jalur yang akan dilacak.

Mengembalikan

string[]

Jalur yang dinormalisasi untuk diteruskan ke anyPathChanged().

transformPath(string)

Ubah jalur menggunakan transformator jalur terdaftar.

function transformPath(pathExpression: string): string

Parameter

pathExpression

string

Jalur untuk berubah.

Mengembalikan

string

Jalur yang diubah.

version()

Mendapatkan nomor versi.

function version(): string

Mengembalikan

string

String dengan nomor versi.