交互
MAESTROSDK.confirm(request)
在 Cowork 窗口上弹出一个原生确认对话框,并等待用户回答。
参数
| 名称 | 类型 | 必填 | 说明 |
|---|---|---|---|
request.title | string | 是 | 对话框标题 |
request.message | string | 是 | 要问的问题 |
request.confirmLabel | string | 否 | 确认按钮的文字;默认为 Cowork 自己的「确定」 |
request.cancelLabel | string | 否 | 取消按钮的文字;默认为 Cowork 自己的「取消」 |
返回值
Promise<boolean>:用户确认时为 true,否则为 false。
返回 false 的情况
| 情况 | 原因 |
|---|---|
| 用户取消或关闭了对话框 | 没有回答就视为否 |
| 这个标签页不是当前活动标签页 | 只有前台的标签页能提问,后台标签页无法打断用户。在用户发起的刷新所触发的 beforeRefresh 处理函数里,即使标签页不在前台也可以提问 |
缺少 title 或 message,或它们不是字符串 | 请求无效 |
| 同一个窗口里已经打开了另一个确认对话框 | 同一时间只能有一个对话框 |
| 页面没有 Cowork 标签页身份,或 Cowork 无法显示对话框 | 不可用 |
示例
js
const ok = await MAESTROSDK.confirm({
title: 'Delete draft',
message: 'Delete this draft? This cannot be undone.',
confirmLabel: 'Delete',
cancelLabel: 'Keep'
});
if (ok) deleteDraft();