Skip to content

Commit 33c7acc

Browse files
authored
refactor: dont query catalog if switching views (#208)
1 parent 31bc46d commit 33c7acc

File tree

3 files changed

+12
-5
lines changed

3 files changed

+12
-5
lines changed

src/components/Catalog.vue

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
<CatalogTableList
4242
v-else
4343
:products="catalogItems"
44+
:loading="loading"
4445
/>
4546
</div>
4647
</div>

src/components/CatalogTableList.vue

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
has-side-border
77
:headers="tableHeaders"
88
is-small
9+
:is-loading="loading"
910
is-clickable
1011
disable-pagination
1112
@row:click="handleRowClick"
@@ -55,6 +56,10 @@ export default defineComponent({
5556
products: {
5657
type: Array as PropType<CatalogItemModel[]>,
5758
default: () => []
59+
},
60+
loading: {
61+
type: Boolean,
62+
default: false
5863
}
5964
},
6065
setup (props) {

src/views/ProductCatalogWrapper.vue

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ export default defineComponent({
7171
const searchString = ref('')
7272
const catalogItems = ref<CatalogItemModel[]>([])
7373
const totalCount = ref<number>(undefined)
74-
const loading = ref<boolean>(null)
74+
const loading = ref<boolean>(true)
7575
const searchTriggered = ref<boolean>(false)
7676
const catalogView = ref<string>(undefined)
7777
const catalogPageNumber = ref(1)
@@ -149,14 +149,12 @@ export default defineComponent({
149149
console.error('failed to find Service Packages', e)
150150
}
151151
} finally {
152-
loading.value = null
152+
loading.value = false
153153
}
154154
}
155155
156156
const catalogViewChanged = (viewType: 'grid' | 'table') => {
157-
catalogItems.value = []
158157
catalogView.value = viewType
159-
fetchProducts()
160158
}
161159
162160
const catalogPageChanged = (pageNumber: number) => {
@@ -167,7 +165,10 @@ export default defineComponent({
167165
}
168166
169167
onBeforeMount(async () => {
170-
await loadAppearance()
168+
await Promise.all([
169+
loadAppearance(),
170+
fetchProducts()
171+
])
171172
})
172173
173174
return {

0 commit comments

Comments
 (0)