跳到正文

適用版本:Cowork 0.1.41 · 適用於所有 Cowork 使用者

檢視 Markdown

生命週期 ​

MAESTROSDK.beforeRefresh(handler) ​

註冊一個函式,在 Cowork 重新整理這個 Mini App 的分頁之前執行,例如使用者按下重新整理按鈕時。用它保住尚未儲存的工作:詢問、儲存,或取消這次重新整理。

參數 ​

名稱類型必填說明
handler() => boolean | void | Promise<boolean | void>是每次重新整理執行一次。回傳 false(或解析為 false 的 promise)會取消重新整理,回傳其他值則讓它繼續

回傳值 ​

() => void:呼叫它即可移除這個處理函式。

行為 ​

  • 處理函式依加入的順序逐一執行,每一個都會被等待完成。
  • 第一個回傳 false 的處理函式會取消重新整理。處理函式拋出錯誤或被拒絕,也會取消重新整理。
  • 沒有處理函式時,分頁會立即重新整理。
  • 同一時間只處理一次重新整理;處理中又收到的第二個請求會被忽略。
  • 不是函式的 handler 會被忽略,回傳的函式也不會做任何事。

示例 ​

js
const off = MAESTROSDK.beforeRefresh(async () => {
  if (!form.dirty) return;
  return await MAESTROSDK.confirm({ title: 'Refresh?', message: 'Unsaved changes will be lost.' });
});
// later
off();

相關 ​

  • 互動 confirm,常在 beforeRefresh 裡使用
  • 概覽 Mini App SDK 的所有模組

適用於 Micromeet Cowork 0.1.41 · build 261111110020