From b9e5ed7346524b8ec31f49527180727d2cd8b978 Mon Sep 17 00:00:00 2001 From: Jon Date: Tue, 11 Mar 2025 15:07:10 +0100 Subject: [PATCH] fix: fixed node fetching and adapted to back data --- src/pages/Zone/Card/ZoneLocationsTree.vue | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/pages/Zone/Card/ZoneLocationsTree.vue b/src/pages/Zone/Card/ZoneLocationsTree.vue index 5c87faf99..c460143a2 100644 --- a/src/pages/Zone/Card/ZoneLocationsTree.vue +++ b/src/pages/Zone/Card/ZoneLocationsTree.vue @@ -72,6 +72,7 @@ const onNodeExpanded = async (nodeKeysArray) => { const response = await axios.get(`Zones/${route.params.id}/getLeaves`, { params, }); + response.data = JSON.parse(response.data); if (response.data) { node.childs = response.data.map((n) => { if (n.sons > 0) n.childs = [{}]; @@ -125,14 +126,17 @@ watch( async (val) => { if (!val) return; // // Se triggerea cuando se actualiza el store.data, el cual es el resultado del fetch de la searchbar + val = JSON.parse(val); if (!nodes.value[0]) nodes.value = [defaultNode]; nodes.value[0].childs = [...val]; const fetchedNodeKeys = val.flatMap(getNodeIds); state.set('Tree', [...fetchedNodeKeys]); expanded.value = [null, ...fetchedNodeKeys]; + const fetchs = []; for (let n of state.get('Tree')) { - await fetchNodeLeaves(n); + fetchs.push(fetchNodeLeaves(n)); } + await Promise.all(fetchs); previousExpandedNodes.value = new Set(expanded.value); }, { immediate: true }