diff --git a/frontend/src/components/ResourceCard.tsx b/frontend/src/components/ResourceCard.tsx index 3de6496..48484ea 100644 --- a/frontend/src/components/ResourceCard.tsx +++ b/frontend/src/components/ResourceCard.tsx @@ -90,7 +90,8 @@ export const ResourceCard = memo(function ResourceCard({ )} {/* 操作区:贴底 */} -
{actions}
+ {/* flex-wrap:按钮多时自动换行,避免在窄卡片里被 flex-1 压扁/溢出 */} +
{actions}
) diff --git a/frontend/src/pages/deployments/components/DeploymentCard.tsx b/frontend/src/pages/deployments/components/DeploymentCard.tsx index 8242225..a4a1552 100644 --- a/frontend/src/pages/deployments/components/DeploymentCard.tsx +++ b/frontend/src/pages/deployments/components/DeploymentCard.tsx @@ -1,6 +1,5 @@ import { memo, useEffect, useState } from 'react' -import { Link } from 'react-router' -import { Play, Square, RotateCw, Trash2, Terminal, ExternalLink, Pencil, Rocket } from 'lucide-react' +import { Play, Square, RotateCw, Trash2, Terminal, Pencil, Rocket } from 'lucide-react' import { Button } from '@/components/ui/button' import { StatusBadge } from '@/components/StatusBadge' import { deploymentApi } from '@/api' @@ -26,7 +25,7 @@ interface DeploymentCardProps { onEditRetention: (d: LokiDeployment) => void } -/** 部署卡片 — 列表项展示与操作入口(部署/停止/重启/日志/访问/删除) */ +/** 部署卡片 — 列表项展示与操作入口(配置/部署/停止/重启/日志/删除) */ export const DeploymentCard = memo(function DeploymentCard({ deployment: d, operating, @@ -83,9 +82,8 @@ export const DeploymentCard = memo(function DeploymentCard({ { label: '副本', value: `${d.replicas} · 保留 ${d.retentionDays || 30} 天` }, ] : [{ label: '保留', value: `${d.retentionDays || 30} 天` }]), { label: '存储', value: d.storageConfig?.name || '本地' }, - ...(d.endpoint ? [{ label: '访问', value: ( - {d.endpoint.replace(/^https?:\/\//, '')} - ), title: d.endpoint }] : []), + // 不再展示 endpoint:K8s 模式下它是 http://loki.log.svc.cluster.local:3100 + // 这类集群内地址,浏览器点不开,纯属噪音 ...(d.grafanaEnabled && d.grafanaEndpoint ? [{ label: 'Grafana', value: ( {d.grafanaEndpoint.replace(/^https?:\/\//, '')} @@ -104,41 +102,26 @@ export const DeploymentCard = memo(function DeploymentCard({ 配置 {canDeploy ? ( - ) : isDeploying ? ( - ) : ( <> - - )} - {d.status === 'running' && ( - <> - - - - )} - {d.endpoint && ( - - )}