From 66cfbd27007460fe925a6f0dcd9a972c4c89039e Mon Sep 17 00:00:00 2001 From: Fine Date: Mon, 23 Oct 2023 10:07:15 +0800 Subject: [PATCH] fix: Avoid querying data with empty parameters --- src/store/modules/topology.ts | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/store/modules/topology.ts b/src/store/modules/topology.ts index 74bc7e15..6a12f252 100644 --- a/src/store/modules/topology.ts +++ b/src/store/modules/topology.ts @@ -191,6 +191,9 @@ export const topologyStore = defineStore({ } }, async getServicesTopology(serviceIds: string[]) { + if (!serviceIds.length) { + return new Promise((resolve) => resolve({})); + } const duration = useAppStoreWithOut().durationTime; const res: AxiosResponse = await graphql.query("getServicesTopology").params({ serviceIds, @@ -207,7 +210,7 @@ export const topologyStore = defineStore({ const clientServiceId = (currentDestService && currentDestService.id) || ""; const duration = useAppStoreWithOut().durationTime; if (!(serverServiceId && clientServiceId)) { - return; + return new Promise((resolve) => resolve({})); } const res: AxiosResponse = await graphql.query("getInstanceTopology").params({ clientServiceId, @@ -220,6 +223,9 @@ export const topologyStore = defineStore({ return res.data; }, async updateEndpointTopology(endpointIds: string[], depth: number) { + if (!endpointIds.length) { + return new Promise((resolve) => resolve({})); + } const res = await this.getEndpointTopology(endpointIds); if (depth > 1) { const ids = res.nodes.map((item: Node) => item.id).filter((d: string) => !endpointIds.includes(d)); @@ -285,6 +291,9 @@ export const topologyStore = defineStore({ } }, async getEndpointTopology(endpointIds: string[]) { + if (!endpointIds.length) { + return new Promise((resolve) => resolve({})); + } const duration = useAppStoreWithOut().durationTime; const variables = ["$duration: Duration!"]; const fragment = endpointIds.map((id: string, index: number) => {