From 0f038e7818e1db0153009fbab6155e2963a9ce03 Mon Sep 17 00:00:00 2001 From: Ironsp <1522278303@qq.com> Date: Sat, 10 Oct 2026 09:57:56 +0800 Subject: [PATCH] =?UTF-8?q?feat=20=E4=B8=AA=E4=BA=BA=E4=B8=AD=E5=BF=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cases/cpns => components}/CasesFilter.vue | 0 .../cases/cpns => components}/CasesGrid.vue | 0 .../cpns => components}/CasesSearchBar.vue | 5 +- src/components/EllipsisText.vue | 69 ++ src/components/PasswordStrength.vue | 6 +- src/components/index.ts | 4 + src/router/routes.ts | 6 +- src/styles/variables.less | 5 +- src/views/cases/index.ts | 4 +- src/views/cases/index.vue | 7 +- src/views/profile/about.vue | 4 +- src/views/profile/address.vue | 237 ++++--- src/views/profile/bind-email.vue | 257 ++++++++ src/views/profile/bind-phone.vue | 235 +++++++ src/views/profile/change-password.vue | 283 +++++++++ src/views/profile/cpns/AboutPanel.vue | 199 +++--- src/views/profile/cpns/BindContactDialog.vue | 299 --------- .../profile/cpns/ChangePasswordDialog.vue | 256 -------- src/views/profile/cpns/FavoritesGrid.vue | 43 -- src/views/profile/cpns/FeedbackForm.vue | 323 +++++++--- src/views/profile/cpns/HelpFaq.vue | 94 +-- src/views/profile/cpns/HotlinePanel.vue | 70 +-- src/views/profile/cpns/ProfileSider.vue | 11 +- src/views/profile/cpns/ProfileUserCard.vue | 12 +- src/views/profile/cpns/QualificationCard.vue | 200 +++--- src/views/profile/cpns/SecurityPanel.vue | 153 ++++- src/views/profile/delete-account.vue | 590 ++++++++++++++++++ src/views/profile/favorites.vue | 176 +++--- src/views/profile/feedback.vue | 26 +- src/views/profile/help.vue | 13 +- src/views/profile/hotline.vue | 33 + src/views/profile/index.ts | 3 - src/views/profile/index.vue | 18 +- src/views/profile/qualifications.vue | 65 +- src/views/profile/security.vue | 296 +-------- 35 files changed, 2346 insertions(+), 1656 deletions(-) rename src/{views/cases/cpns => components}/CasesFilter.vue (100%) rename src/{views/cases/cpns => components}/CasesGrid.vue (100%) rename src/{views/cases/cpns => components}/CasesSearchBar.vue (93%) create mode 100644 src/components/EllipsisText.vue create mode 100644 src/views/profile/bind-email.vue create mode 100644 src/views/profile/bind-phone.vue create mode 100644 src/views/profile/change-password.vue delete mode 100644 src/views/profile/cpns/BindContactDialog.vue delete mode 100644 src/views/profile/cpns/ChangePasswordDialog.vue delete mode 100644 src/views/profile/cpns/FavoritesGrid.vue create mode 100644 src/views/profile/delete-account.vue diff --git a/src/views/cases/cpns/CasesFilter.vue b/src/components/CasesFilter.vue similarity index 100% rename from src/views/cases/cpns/CasesFilter.vue rename to src/components/CasesFilter.vue diff --git a/src/views/cases/cpns/CasesGrid.vue b/src/components/CasesGrid.vue similarity index 100% rename from src/views/cases/cpns/CasesGrid.vue rename to src/components/CasesGrid.vue diff --git a/src/views/cases/cpns/CasesSearchBar.vue b/src/components/CasesSearchBar.vue similarity index 93% rename from src/views/cases/cpns/CasesSearchBar.vue rename to src/components/CasesSearchBar.vue index 30ac0ac..d6c1147 100644 --- a/src/views/cases/cpns/CasesSearchBar.vue +++ b/src/components/CasesSearchBar.vue @@ -4,9 +4,11 @@ import { computed } from 'vue' interface Props { keyword: string favoriteOnly: boolean + /** 是否显示「收藏列表」切换按钮(案例库显示,收藏页本身不显示) */ + showFavoriteToggle?: boolean } -const props = defineProps() +const props = withDefaults(defineProps(), { showFavoriteToggle: true }) const emit = defineEmits<{ 'update:keyword': [keyword: string] @@ -44,6 +46,7 @@ const keyword = computed({