diff --git a/frontend/src/components/DeviceDetailDrawer.jsx b/frontend/src/components/DeviceDetailDrawer.jsx index 5bf370d..9e78960 100644 --- a/frontend/src/components/DeviceDetailDrawer.jsx +++ b/frontend/src/components/DeviceDetailDrawer.jsx @@ -59,12 +59,16 @@ function DeviceDetailDrawer({ device, visible, onClose, cables, onRefreshCables, const fieldKey = field.field; if (fieldKey === 'status') return getStatusTag(device.status); + // 优先从device对象获取值,如果没有则从customFields中获取 let value = device[fieldKey]; + if ((value === undefined || value === null) && device.customFields && typeof device.customFields === 'object') { + value = device.customFields[fieldKey]; + } if (fieldKey === 'type') value = getDeviceTypeName(value); else if (fieldKey === 'position') value = `U${device.position} ${device.height ? `(${device.height}U)` : ''}`; - return {value || '-'}; + return {value !== undefined && value !== null ? value : '-'}; }, [getStatusTag, getDeviceTypeName]); const displayFields = useMemo(() => {