封装公共组件,调整样式文件的布局,修改路由页面样式

This commit is contained in:
2025-03-27 19:58:58 +08:00
parent d9b9ce4676
commit 540618b8ca
33 changed files with 2613 additions and 987 deletions
+11 -4
View File
@@ -4,12 +4,16 @@ interface StatusDotProps {
status: StatusType | boolean;
text?: string;
className?: string;
size?: 'default' | 'sm' | 'lg';
pulse?: boolean;
}
export function StatusDot({
status,
text,
className = ''
className = '',
size = 'default',
pulse = false
}: StatusDotProps) {
// 如果status是布尔值,则转换为对应的状态类型
const statusType = typeof status === 'boolean'
@@ -23,11 +27,14 @@ export function StatusDot({
statusType === 'warning' ? '警告' :
statusType === 'processing' ? '处理中' : '未知'
);
const sizeClass = size !== 'default' ? `status-dot-${size}` : '';
const pulseClass = pulse ? 'status-dot-pulse' : '';
return (
<span className={`inline-flex items-center ${className}`}>
<i className={`status-dot status-dot-${statusType}`}></i>
{statusText}
<span className={`status-dot-with-text ${className}`}>
<span className={`status-dot status-dot-${statusType} ${sizeClass} ${pulseClass}`}></span>
<span className="status-dot-text">{statusText}</span>
</span>
);
}