Siklus Hidup
MAESTROSDK.beforeRefresh(handler)
Mendaftarkan fungsi yang berjalan sebelum Cowork me-refresh tab Mini App ini, misalnya saat pengguna menekan tombol refresh. Gunakan untuk menjaga pekerjaan yang belum disimpan: bertanya, menyimpan, atau membatalkan refresh.
Parameter
| Nama | Tipe | Wajib | Deskripsi |
|---|---|---|---|
handler | () => boolean | void | Promise<boolean | void> | Ya | Berjalan sekali setiap refresh. Kembalikan false (atau promise yang selesai dengan false) untuk membatalkan refresh. Nilai lain membiarkannya berlanjut |
Nilai kembalian
() => void: panggil untuk menghapus handler ini.
Perilaku
- Handler berjalan satu per satu, sesuai urutan ditambahkan, dan masing-masing ditunggu.
- Handler pertama yang mengembalikan
falsemembatalkan refresh. Handler yang melempar error atau reject juga membatalkannya. - Tanpa handler, tab langsung di-refresh.
- Hanya satu refresh yang ditangani dalam satu waktu; permintaan kedua saat satu refresh sedang berjalan diabaikan.
handleryang bukan fungsi diabaikan, dan fungsi yang dikembalikan tidak melakukan apa-apa.
Contoh
js
const off = MAESTROSDK.beforeRefresh(async () => {
if (!form.dirty) return;
return await MAESTROSDK.confirm({ title: 'Refresh?', message: 'Unsaved changes will be lost.' });
});
// later
off();