From 71f3fedef717652ec7b7c9fe1e27fbf80e0fb933 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9E=97=E4=B8=80=E4=BA=8C?= Date: Sun, 12 Dec 2021 22:01:04 +0800 Subject: [PATCH] fix: debounced update ignore first updates of batch workspace update --- src/services/workspaces/index.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/services/workspaces/index.ts b/src/services/workspaces/index.ts index 451d1083..3950bec1 100644 --- a/src/services/workspaces/index.ts +++ b/src/services/workspaces/index.ts @@ -26,7 +26,8 @@ import i18n from '@services/libs/i18n'; import { defaultServerIP } from '@/constants/urls'; import { logger } from '@services/libs/log'; -const debouncedSetSettingFile = debounce(async (id: string, workspace: IWorkspace) => await settings.set(`workspaces.${id}`, { ...workspace }), 500); +// eslint-disable-next-line @typescript-eslint/no-unsafe-argument +const debouncedSetSettingFile = debounce(async (workspaces: Record) => await settings.set(`workspaces`, workspaces as any), 500); @injectable() export class Workspace implements IWorkspaceService { @@ -200,7 +201,7 @@ export class Workspace implements IWorkspaceService { if (immediate === true) { await settings.set(`workspaces.${id}`, { ...workspace }); } else { - await debouncedSetSettingFile(id, workspace); + void debouncedSetSettingFile(this.workspaces); } await this.updateWorkspaceSubject(); await this.updateWorkspaceMenuItems();