From 83279ca9bddea9ef658983c1419e9f4f429c136b Mon Sep 17 00:00:00 2001 From: duanshuwen Date: Sun, 31 May 2026 19:46:36 +0800 Subject: [PATCH] feat(quick-page, components): add pagination and pull refresh, refine UI and component logic - add @lucide/vue dependency and replace van-icon with CalendarDays icon - refactor TopNavBar to use vue-router back navigation instead of uni API - update Card component styles for better visual appearance - fix touch event formatting in CardSwiper and switch tap to click events - major refactor of Calendar component: implement v-model:show, add exposed open/close methods, improve date handling logic - add TypeScript types and update vant component declarations - add pull-to-refresh and pagination support to quick booking page --- components.d.ts | 4 + package.json | 1 + src/components/Calender/index.vue | 106 ++++++----- src/components/TopNavBar/index.vue | 27 +-- .../Discovery/components/CardSwiper/index.vue | 6 +- src/pages/quick/components/Card/index.vue | 6 +- src/pages/quick/index.vue | 176 ++++++++++++------ yarn.lock | 5 + 8 files changed, 192 insertions(+), 139 deletions(-) diff --git a/components.d.ts b/components.d.ts index 41fb45d..ef6e97e 100644 --- a/components.d.ts +++ b/components.d.ts @@ -50,7 +50,9 @@ declare module 'vue' { VanCheckbox: typeof import('vant/es')['Checkbox'] VanIcon: typeof import('vant/es')['Icon'] VanIcons: typeof import('vant/es')['Icons'] + VanList: typeof import('vant/es')['List'] VanPopup: typeof import('vant/es')['Popup'] + VanPullRefresh: typeof import('vant/es')['PullRefresh'] VanSwipe: typeof import('vant/es')['Swipe'] VanSwipeItem: typeof import('vant/es')['SwipeItem'] VanSwiperItem: typeof import('vant/es')['SwiperItem'] @@ -98,7 +100,9 @@ declare global { const VanCheckbox: typeof import('vant/es')['Checkbox'] const VanIcon: typeof import('vant/es')['Icon'] const VanIcons: typeof import('vant/es')['Icons'] + const VanList: typeof import('vant/es')['List'] const VanPopup: typeof import('vant/es')['Popup'] + const VanPullRefresh: typeof import('vant/es')['PullRefresh'] const VanSwipe: typeof import('vant/es')['Swipe'] const VanSwipeItem: typeof import('vant/es')['SwipeItem'] const VanSwiperItem: typeof import('vant/es')['SwiperItem'] diff --git a/package.json b/package.json index c8824fa..6195f20 100644 --- a/package.json +++ b/package.json @@ -11,6 +11,7 @@ "test": "node --test src/**/*.test.ts" }, "dependencies": { + "@lucide/vue": "^1.17.0", "axios": "^1.16.1", "mitt": "^3.0.1", "pinia": "^3.0.3", diff --git a/src/components/Calender/index.vue b/src/components/Calender/index.vue index b19f200..b3a1922 100644 --- a/src/components/Calender/index.vue +++ b/src/components/Calender/index.vue @@ -1,5 +1,6 @@