SimpleDialog class
允许创建基于简单关闭的自定义对话。 这对于需要动态聊天流的情况非常有用,或者你的情况只是无法很好地映射到使用瀑布。 请记住以下事项:
- 对话框关闭可以在可能需要测试的两个不同的上下文中调用。 当用户向对话发送消息时,它将按预期进行调用,但如果从关闭时调用另一个提示或对话,则会再次调用来自提示/对话的结果。 通常可以通过检查
args.resumed属性的存在性来测试此第二种情况。 请务必避免让自己进入一个无限循环,这很容易做到。 - 与瀑布式对话不同,对话不会自动结束。 它将保持活动对话框,直到调用 session.endDialog()。
- 扩展
构造函数
| Simple |
基于简单关闭创建新的自定义对话框。 |
方法
| begin<T>(Call |
启动新的对话会话时调用。 |
| dialog |
子对话已结束,当前对话正在恢复。 |
| reply |
处理从用户收到的消息。 由对话框系统调用。 |
构造函数详细信息
SimpleDialog((session: CallSession, args?: any | IDialogResult<any>) => void)
基于简单关闭创建新的自定义对话框。
new SimpleDialog(handler: (session: CallSession, args?: any | IDialogResult<any>) => void)
参数
- handler
-
(session: CallSession, args?: any | IDialogResult<any>) => void
对话框的函数关闭。
方法详细信息
begin<T>(CallSession, T)
启动新的对话会话时调用。
function begin<T>(session: CallSession, args?: T)
参数
- session
- CallSession
当前会话的会话对象。
- args
-
T
(可选)由其父级传递给对话框的参数。
dialogResumed<T>(CallSession, IDialogResult<T>)
子对话已结束,当前对话正在恢复。
function dialogResumed<T>(session: CallSession, result: IDialogResult<T>)
参数
- session
- CallSession
当前会话的会话对象。
- result
子对话返回的结果。
replyReceived(CallSession)
处理从用户收到的消息。 由对话框系统调用。
function replyReceived(session: CallSession)
参数
- session
- CallSession
当前会话的会话对象。