|
|
@@ -0,0 +1,86 @@
|
|
|
+import { View, Image, Text } from '@tarojs/components'
|
|
|
+import TDesignIcon from '../icon'
|
|
|
+import './index.css'
|
|
|
+
|
|
|
+interface UserCenterCardProps {
|
|
|
+ /** 用户头像URL */
|
|
|
+ avatar?: string
|
|
|
+ /** 用户昵称 */
|
|
|
+ nickname?: string
|
|
|
+ /** 用户手机号 */
|
|
|
+ phone?: string
|
|
|
+ /** 是否显示编辑按钮 */
|
|
|
+ showEdit?: boolean
|
|
|
+ /** 点击编辑按钮回调 */
|
|
|
+ onEdit?: () => void
|
|
|
+ /** 点击头像回调 */
|
|
|
+ onAvatarClick?: () => void
|
|
|
+}
|
|
|
+
|
|
|
+export default function UserCenterCard({
|
|
|
+ avatar = '',
|
|
|
+ nickname = '未登录',
|
|
|
+ phone = '',
|
|
|
+ showEdit = true,
|
|
|
+ onEdit,
|
|
|
+ onAvatarClick
|
|
|
+}: UserCenterCardProps) {
|
|
|
+ // 背景图片URL
|
|
|
+ const backgroundImage = 'https://we-retail-static-1300977798.cos.ap-guangzhou.myqcloud.com/retail-mp/common/user-center-bg.png'
|
|
|
+
|
|
|
+ // 默认头像
|
|
|
+ const defaultAvatar = 'https://we-retail-static-1300977798.cos.ap-guangzhou.myqcloud.com/retail-mp/common/avatar.png'
|
|
|
+
|
|
|
+ return (
|
|
|
+ <View className="user-center-card">
|
|
|
+ {/* 背景图片 */}
|
|
|
+ <Image
|
|
|
+ src={backgroundImage}
|
|
|
+ mode="aspectFill"
|
|
|
+ className="user-center-card__bg"
|
|
|
+ />
|
|
|
+
|
|
|
+ {/* 用户信息区域 */}
|
|
|
+ <View className="user-center-card__content">
|
|
|
+ {/* 头像区域 */}
|
|
|
+ <View
|
|
|
+ className="user-center-card__avatar-container"
|
|
|
+ onClick={onAvatarClick}
|
|
|
+ >
|
|
|
+ <Image
|
|
|
+ src={avatar || defaultAvatar}
|
|
|
+ mode="aspectFill"
|
|
|
+ className="user-center-card__avatar"
|
|
|
+ />
|
|
|
+ </View>
|
|
|
+
|
|
|
+ {/* 用户信息 */}
|
|
|
+ <View className="user-center-card__info">
|
|
|
+ <View className="user-center-card__name-container">
|
|
|
+ <Text className="user-center-card__name">
|
|
|
+ {nickname}
|
|
|
+ </Text>
|
|
|
+ {showEdit && (
|
|
|
+ <View
|
|
|
+ className="user-center-card__edit"
|
|
|
+ onClick={onEdit}
|
|
|
+ >
|
|
|
+ <TDesignIcon
|
|
|
+ name="setting"
|
|
|
+ size="32rpx"
|
|
|
+ color="#fff"
|
|
|
+ />
|
|
|
+ </View>
|
|
|
+ )}
|
|
|
+ </View>
|
|
|
+
|
|
|
+ {phone && (
|
|
|
+ <Text className="user-center-card__phone">
|
|
|
+ {phone}
|
|
|
+ </Text>
|
|
|
+ )}
|
|
|
+ </View>
|
|
|
+ </View>
|
|
|
+ </View>
|
|
|
+ )
|
|
|
+}
|