ProfilePage 用户中心

基于 uniboot-uiUAvatar 与用户中心布局封装的 个人资料页渐变背景 + 居中内容区、左上角返回、左侧 头像 / 昵称 / 角色标签 / 垂直菜单,右侧为 #panel(或按菜单 key 的 #panel-${key})渲染的业务内容。布局与交互对齐 uniboot-web-template 用户中心(views/user-center 一类页面)的常见形态。

基础用法

传入 menusnickNameroleNamesavatar-src;右侧用 #panel 接收 active-key,在插槽内按 key 切换模块(或使用 #panel-info / #panel-security 等具名插槽分别挂载)。v-model:active-key 与左侧菜单同步;onBack / back 处理返回。

以下为静态示例,无真实接口。

905020483@qq.com
管理员操作员

ProfilePage 属性

名称说明类型默认值
fullPage是否使用整页渐变背景与内边距;文档内嵌可设为 falsebooleantrue
background外层背景(CSS backgroundstring与模板工程用户中心一致的蓝紫渐变
centerMaxWidth主区域最大宽度string960px
sidebarWidth左侧栏宽度(px)number277
avatarSrc头像地址string''
avatarSize头像尺寸(px,同 UAvatar 数字 sizenumber92
nickName昵称string''
roleNames角色名列表,展示为左侧主色描边标签array[]
menus左侧菜单项({ key, title }array
showBack是否显示返回按钮(可用 #back 完全自定义)booleantrue
onBack点击返回时调用,先于 back 事件function

双向绑定

名称说明
active-key当前选中的菜单 key

事件

名称说明
back点击默认返回按钮时
menu-change左侧菜单切换为新 key

插槽

名称说明
back替换左上角返回区域
avatar替换头像
nickname替换昵称文案
roles替换角色标签区域
sidebar-extra左侧菜单下方附加区域
panel右侧主内容;作用域参数 active-key
panel-$按菜单 key 拆分右侧内容(优先级高于 panel 默认内容)

整页最小高度为 calc(100vh - var(--upro-profile-navbar-height, 0px)),可与顶栏高度对齐:在页面根节点设置 --upro-profile-navbar-height(例如与 --navbar-height 一致)。

源码位于 packages/components 仓库的 profile-page