UNPKG

press-next

Version:

Vue3 组件库,支持 Composition API

125 lines (107 loc) 2.17 kB
/** * 对局操作弹窗组件的模拟数据 */ // 战队信息接口 interface TeamInfo { name: string; avatar?: string; } // 操作项接口 interface OperationItem { name: string; title: string; icon: string; } // 比赛状态类型 type MatchStatus = 'not-start' | 'ing' | 'end'; // 默认头像 const DEFAULT_AVATAR = 'https://image-1251917893.file.myqcloud.com/tip-project/pubg/pubg-match/teamate-default-avatar.png'; // 战队信息模拟数据 const TEAM_DATA = { leftTeam: { name: '战队Alpha', avatar: DEFAULT_AVATAR, }, rightTeam: { name: '战队Beta', avatar: DEFAULT_AVATAR, }, }; // 比赛信息 const MATCH_INFO = '决赛 - 艾伦格'; // 比赛状态 const MATCH_STATUS = { status: 'not-start' as MatchStatus, statusText: '未开始', }; // 操作列表 const OPERATIONS: OperationItem[] = [ { name: 'RESET_BATTLE', title: '重置比赛', icon: 'icon-reset', }, { name: 'START_BATTLE', title: '开始比赛', icon: 'icon-play', }, { name: 'CHANGE_SCORE', title: '改判比分', icon: 'icon-edit', }, { name: 'BATTLE_RECORD', title: '对局记录', icon: 'icon-list', }, { name: 'LIVING_ROOM', title: '直播间', icon: 'icon-video', }, ]; /** * 获取对局操作弹窗的模拟数据 * @returns {Object} 包含组件所需的测试数据 */ export function getMockData() { return { // 战队信息 ...TEAM_DATA, // 比赛信息 matchInfo: MATCH_INFO, // 比赛状态 ...MATCH_STATUS, // 操作列表 operations: [...OPERATIONS], }; } /** * 获取战队信息数据 * @returns {Object} 战队信息 */ export function getTeamData() { return TEAM_DATA; } /** * 获取操作列表 * @returns {OperationItem[]} 操作列表 */ export function getOperations(): OperationItem[] { return [...OPERATIONS]; } /** * 获取比赛状态数据 * @returns {Object} 比赛状态数据 */ export function getMatchStatus() { return MATCH_STATUS; } // 导出类型 export type { TeamInfo, OperationItem, MatchStatus }; // 导出默认数据 export default { getMockData, };