From 2e18a19a9e5c000f7900f08cea7c607bf333cb22 Mon Sep 17 00:00:00 2001 From: Suven-p Date: Sun, 27 Oct 2024 19:55:21 +0545 Subject: [PATCH] Delete query params if empty --- src/components/MonitorList.vue | 33 +++++++++++++++++++++++---------- 1 file changed, 23 insertions(+), 10 deletions(-) diff --git a/src/components/MonitorList.vue b/src/components/MonitorList.vue index 303e284ce..f91f6878f 100644 --- a/src/components/MonitorList.vue +++ b/src/components/MonitorList.vue @@ -198,11 +198,15 @@ export default { return this.$route.query.searchText || ""; }, set(value) { + const newQuery = { + ...this.$route.query, + searchText: value, + }; + if (!value) { + delete newQuery.searchText; + } this.$router.replace({ - query: { - ...this.$route.query, - searchText: value, - } + query: newQuery, }); } }, @@ -286,13 +290,22 @@ export default { * @returns {void} */ updateFilter(newFilter) { + let newQuery = { + ...this.$route.query, + ...newFilter, + }; + if (!newFilter.status || newFilter.status.length === 0) { + delete newQuery.status; + } + if (!newFilter.active || newFilter.active.length === 0) { + delete newQuery.active; + } + if (!newFilter.tags || newFilter.tags.length === 0) { + delete newQuery.tags; + } + this.$router.replace({ - query: { - ...this.$route.query, - status: newFilter.status, - active: newFilter.active, - tags: newFilter.tags, - }, + query: newQuery, }); }, /**