press-next
Version:
Vue3 组件库,支持 Composition API
77 lines (66 loc) • 1.65 kB
text/typescript
// 队伍/用户信息接口
export interface TeamInfo {
name: string;
avatar: string;
score?: number;
}
// 获胜者信息接口
export interface WinnerInfo {
name: string;
avatar: string;
}
// for components demo
export function getMockData() {
// 左侧队伍信息
const leftTeam: TeamInfo = {
name: '阵营名最长…',
avatar: 'https://placehold.co/40x40/4A90E2/ffffff?text=1',
score: 3,
};
// 右侧队伍信息
const rightTeam: TeamInfo = {
name: '阵营名最长…',
avatar: 'https://placehold.co/40x40/4A90E2/ffffff?text=1',
score: 2,
};
// 获胜者信息(冠军模式)
const winner: WinnerInfo = {
name: '用户昵称昵称最长十个字',
avatar: 'https://placehold.co/40x40/4A90E2/ffffff?text=1',
};
// 晋级状态组件属性
const advanceProps = {
matchType: 'score' as const,
status: 'advance' as const,
leftTeam,
rightTeam,
matchTime: '已结束 11/18 12:00',
showRematch: true,
shareButtonText: '分享比赛',
};
// 冠军状态组件属性
const championProps = {
matchType: 'single' as const,
status: 'champion' as const,
winner,
shareButtonText: '分享比赛',
};
// 等待状态组件属性
const waitingProps = {
matchType: 'single' as const,
status: 'waiting' as const,
winner,
waitingText: '比赛进行中,等待裁判录入成绩',
};
// 组件属性配置
const componentProps = {
advanceProps,
championProps,
waitingProps,
};
return componentProps;
}
const DEMO_DATA = {
...getMockData().advanceProps,
};
export default DEMO_DATA; // for d2c