Files
bodyWeight/miniprogram/mock/member.mock.ts
T

70 lines
1.6 KiB
TypeScript

/** 成员项(与 equipmentMember / data 页面共享结构) */
export interface MemberItem {
id: string
name: string
gender: '男' | '女'
age: number
/** 身高(cm) */
height: number
/** 头像色块 */
avatar: string
isSelf: boolean
/** 他人添加的成员(只读,不显示编辑/删除) */
isFromOther: boolean
}
/** 头像色块池 */
const AVATAR_COLORS = ['#1385FA', '#2AC79F', '#FF8FAB', '#FFB347', '#A78BFA', '#F87171']
/** Mock 成员列表 */
export const mockMembers: MemberItem[] = [
{
id: 'm-001',
name: '陈小飞',
gender: '男',
age: 28,
height: 175,
avatar: AVATAR_COLORS[0],
isSelf: true,
isFromOther: false,
},
{
id: 'm-002',
name: '李镇南',
gender: '男',
age: 32,
height: 178,
avatar: AVATAR_COLORS[1],
isSelf: false,
isFromOther: false,
},
{
id: 'm-003',
name: '张颖',
gender: '女',
age: 26,
height: 165,
avatar: AVATAR_COLORS[2],
isSelf: false,
isFromOther: false,
},
{
id: 'm-004',
name: '王建国',
gender: '男',
age: 60,
height: 170,
avatar: AVATAR_COLORS[3],
isSelf: false,
isFromOther: true,
},
]
/**
* 生成下一个可用的头像色块
* @param existingCount 已有成员数量
*/
export function nextAvatarColor(existingCount: number): string {
return AVATAR_COLORS[existingCount % AVATAR_COLORS.length]
}