diff --git a/src/components/ui/CardDescriptor.vue b/src/components/ui/CardDescriptor.vue index 2669b53a9..5c911a08e 100644 --- a/src/components/ui/CardDescriptor.vue +++ b/src/components/ui/CardDescriptor.vue @@ -62,7 +62,7 @@ async function getData() { filter: $props.filter, skip: 0, }); - const { data } = await arrayData.fetch({ append: false }); + const { data } = await arrayData.fetch({ append: false, updateRouter: false }); entity.value = data; emit('onFetch', data); } diff --git a/src/composables/useArrayData.js b/src/composables/useArrayData.js index 523340cc9..39c879f98 100644 --- a/src/composables/useArrayData.js +++ b/src/composables/useArrayData.js @@ -58,7 +58,7 @@ export function useArrayData(key, userOptions) { } } - async function fetch({ append = false }) { + async function fetch({ append = false, updateRouter = true }) { if (!store.url) return; cancelRequest(); @@ -100,15 +100,12 @@ export function useArrayData(key, userOptions) { hasMoreData.value = response.data.length === limit; - if (append === true) { + if (append) { if (!store.data) store.data = []; for (const row of response.data) store.data.push(row); - } - - if (append === false) { + } else { store.data = response.data; - - updateStateParams(); + updateRouter && updateStateParams(); } store.isLoading = false; @@ -155,7 +152,9 @@ export function useArrayData(key, userOptions) { delete store.userParams[param]; delete params[param]; if (store.filter?.where) { - delete store.filter.where[Object.keys(exprBuilder ? exprBuilder(param) : param)[0]]; + delete store.filter.where[ + Object.keys(exprBuilder ? exprBuilder(param) : param)[0] + ]; if (Object.keys(store.filter.where).length === 0) { delete store.filter.where; }