/** * 问题数量差异显示组件 * 用于显示文档版本之间的问题数量对比 */ interface IssuesDiffProps { currentIssues: number | null; previousIssues?: number | null; issuesDiff?: number; issuesDiffType?: 'increase' | 'decrease' | 'same'; className?: string; } export function IssuesDiff({ currentIssues, previousIssues, issuesDiff, issuesDiffType, className = '' }: IssuesDiffProps) { // 如果当前问题数量为 null,显示 "-" if (currentIssues === null) { return -; } // 如果没有上一个版本或上一个版本问题数量为 null,只显示当前数量 if (previousIssues === null || previousIssues === undefined || issuesDiffType === undefined) { return {currentIssues}; } // 显示当前数量 + 差异 return (
{currentIssues} {issuesDiff !== undefined && issuesDiffType && ( {issuesDiffType === 'increase' && ( <> +{issuesDiff} )} {issuesDiffType === 'decrease' && ( <> -{issuesDiff} )} {issuesDiffType === 'same' && ( <> 0 )} )}
); }