From a1d7e81859f554f3a53680cc35f0f49bf1f77098 Mon Sep 17 00:00:00 2001
From: wwf <1971391498@qq.com>
Date: 星期四, 14 五月 2026 14:37:02 +0800
Subject: [PATCH] 导入项目
---
src/views/Profile/Index.vue | 67 +++++++++++++++++++++++++++++++++
1 files changed, 67 insertions(+), 0 deletions(-)
diff --git a/src/views/Profile/Index.vue b/src/views/Profile/Index.vue
new file mode 100644
index 0000000..29b2694
--- /dev/null
+++ b/src/views/Profile/Index.vue
@@ -0,0 +1,67 @@
+<template>
+ <!-- TODO @鑺嬭壙锛氬彲浼樺寲锛屽鏍� vben 鐗堟湰 -->
+ <div class="flex">
+ <el-card class="user w-1/3" shadow="hover">
+ <template #header>
+ <div class="card-header">
+ <span>{{ t('profile.user.title') }}</span>
+ </div>
+ </template>
+ <ProfileUser ref="profileUserRef" />
+ </el-card>
+ <el-card class="user ml-3 w-2/3" shadow="hover">
+ <div>
+ <el-tabs v-model="activeName" class="profile-tabs" style="height: 400px" tab-position="top">
+ <el-tab-pane :label="t('profile.info.basicInfo')" name="basicInfo">
+ <BasicInfo @success="handleBasicInfoSuccess" />
+ </el-tab-pane>
+ <el-tab-pane :label="t('profile.info.resetPwd')" name="resetPwd">
+ <ResetPwd />
+ </el-tab-pane>
+ <el-tab-pane :label="t('profile.info.userSocial')" name="userSocial">
+ <UserSocial v-model:activeName="activeName" />
+ </el-tab-pane>
+ </el-tabs>
+ </div>
+ </el-card>
+ </div>
+</template>
+<script lang="ts" setup>
+import { BasicInfo, ProfileUser, ResetPwd, UserSocial } from './components'
+
+const { t } = useI18n()
+defineOptions({ name: 'Profile' })
+const activeName = ref('basicInfo')
+const profileUserRef = ref()
+
+// 澶勭悊鍩烘湰淇℃伅鏇存柊鎴愬姛
+const handleBasicInfoSuccess = async () => {
+ await profileUserRef.value?.refresh()
+}
+</script>
+<style scoped>
+.user {
+ max-height: 960px;
+ padding: 15px 20px 20px;
+}
+
+.card-header {
+ display: flex;
+ justify-content: center;
+ align-items: center;
+}
+
+:deep(.el-card .el-card__header, .el-card .el-card__body) {
+ padding: 15px !important;
+}
+
+.profile-tabs > .el-tabs__content {
+ padding: 32px;
+ font-weight: 600;
+ color: #6b778c;
+}
+
+.el-tabs--left .el-tabs__content {
+ height: 100%;
+}
+</style>
--
Gitblit v1.8.0