/** * GitHub 数据显示模块 * 负责在页面上显示 GitHub 统计信息 */ class GitHubDisplay { constructor() { this.githubAPI = githubAPI; this.containerSelectors = { stats: '.github-stats', commits: '.github-commits', contributors: '.github-contributors', languages: '.github-languages' }; } /** * 初始化 GitHub 数据显示 */ async init() { console.log('初始化 GitHub 数据显示...'); // 显示加载状态 this.showLoadingState(); try { // 获取统计数据 const stats = await this.githubAPI.getAllStats(); if (!stats) { this.showError(); return; } // 更新所有显示区域 this.updateStats(stats); this.updateRecentCommits(stats); this.updateContributors(stats); this.updateLanguages(stats); console.log('GitHub 数据显示完成'); } catch (error) { console.error('GitHub 数据显示失败:', error); this.showError(); } } /** * 显示加载状态 */ showLoadingState() { const containers = document.querySelectorAll('.github-stats-loading'); containers.forEach(container => { container.innerHTML = `
${repo.description}
查看仓库