refactor(frontend): refactor popup api and make sure call dispose callback
Close #14122
This commit is contained in:
@@ -109,7 +109,7 @@ async function onDeleteButtonClicked(id: string) {
|
||||
|
||||
async function showEditor(mode: 'create' | 'edit', id?: string) {
|
||||
const { dispose, needLoad } = await new Promise<{ dispose: () => void, needLoad: boolean }>(async resolve => {
|
||||
const res = await os.popup(
|
||||
const { dispose: _dispose } = os.popup(
|
||||
defineAsyncComponent(() => import('./notification-recipient.editor.vue')),
|
||||
{
|
||||
mode,
|
||||
@@ -117,10 +117,10 @@ async function showEditor(mode: 'create' | 'edit', id?: string) {
|
||||
},
|
||||
{
|
||||
submitted: async () => {
|
||||
resolve({ dispose: res.dispose, needLoad: true });
|
||||
resolve({ dispose: _dispose, needLoad: true });
|
||||
},
|
||||
closed: () => {
|
||||
resolve({ dispose: res.dispose, needLoad: false });
|
||||
resolve({ dispose: _dispose, needLoad: false });
|
||||
},
|
||||
},
|
||||
);
|
||||
|
Reference in New Issue
Block a user