12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- <!-- @format -->
- <script lang="ts" setup>
- import { getCollectionGoodsListApi } from '@/api/model/my'
- import { PageSizeEnum } from '~/enums/sizeEnum'
- const props = defineProps<{
- activeName: string
- }>()
- const list = ref<any[]>([])
- const currentPage = ref(PageSizeEnum.PAGE)
- const total = ref()
- const page_size = ref(8)
- async function getCollectProductsList(pageNo = currentPage.value, pageSize = page_size.value) {
- const data: any = await getCollectionGoodsListApi({
- pageNo,
- pageSize,
- })
- total.value = data.total
- currentPage.value = data.current
- list.value = data.records
- }
- function changePage(current: number, size: number) {
- getCollectProductsList(current, size)
- }
- watch(() => props.activeName, (newVal) => {
- if (newVal === 'products')
- getCollectProductsList()
- }, { immediate: true })
- </script>
- <template>
- <div class="min-h-400px flex items-center">
- <div v-if="list.length">
- <div class="grid grid-gap-40px grid-cols-4">
- <div v-for="item in list" :key="item.id">
- <common-goods-item :item />
- </div>
- </div>
- <div class="mt-60px flex justify-center">
- <el-pagination
- :page-size="page_size"
- :pager-count="10"
- layout="prev, pager, next"
- :total="total" @change="changePage"
- />
- </div>
- </div>
- <common-empty v-else />
- </div>
- </template>
- <style lang="less" scoped></style>
|