From d543e56efb3b3e5800ab3ec24eda25565311eda2 Mon Sep 17 00:00:00 2001 From: kailong321200875 <321200875@qq.com> Date: Sat, 7 Oct 2023 16:43:03 +0800 Subject: [PATCH] feat: Waterfall --- src/components/Waterfall/src/Waterfall.vue | 145 +++++++++++++++------ src/config/axios/service.ts | 2 +- src/views/Components/Waterfall.vue | 26 +++- 3 files changed, 131 insertions(+), 42 deletions(-) diff --git a/src/components/Waterfall/src/Waterfall.vue b/src/components/Waterfall/src/Waterfall.vue index 3a22c7b44..bf3018dc1 100644 --- a/src/components/Waterfall/src/Waterfall.vue +++ b/src/components/Waterfall/src/Waterfall.vue @@ -1,89 +1,156 @@ diff --git a/src/config/axios/service.ts b/src/config/axios/service.ts index da1173378..01f31e379 100644 --- a/src/config/axios/service.ts +++ b/src/config/axios/service.ts @@ -32,7 +32,7 @@ axiosInstance.interceptors.response.use( return res }, (error: AxiosError) => { - console.log('err' + error) // for debug + console.log('err: ' + error) // for debug ElMessage.error(error.message) return Promise.reject(error) } diff --git a/src/views/Components/Waterfall.vue b/src/views/Components/Waterfall.vue index 60fc3adc0..33b6d7e76 100644 --- a/src/views/Components/Waterfall.vue +++ b/src/views/Components/Waterfall.vue @@ -11,29 +11,51 @@ const data = ref([]) const getList = () => { const list: any = [] for (let i = 0; i < 20; i++) { + // 随机 100, 500 之间的整数 + const height = Mock.Random.integer(100, 500) + const width = Mock.Random.integer(100, 500) list.push( Mock.mock({ + width, + height, id: toAnyString(), - image_uri: Mock.Random.image('@integer(100, 500)x@integer(100, 500)') + image_uri: Mock.Random.image(`${width}x${height}`) }) ) } data.value = [...unref(data), ...list] - console.log('【data】:', data.value) + if (unref(data).length >= 60) { + end.value = true + } } getList() const { t } = useI18n() + +const loading = ref(false) + +const end = ref(false) + +const loadMore = () => { + loading.value = true + setTimeout(() => { + getList() + loading.value = false + }, 1000) +}