diff --git a/src/components/StockChart/StockChartModal.js b/src/components/StockChart/StockChartModal.js index afcd7f9e..f71f80d0 100644 --- a/src/components/StockChart/StockChartModal.js +++ b/src/components/StockChart/StockChartModal.js @@ -23,6 +23,25 @@ const StockChartModal = ({ const [chartData, setChartData] = useState(null); const [preloadedData, setPreloadedData] = useState({}); + // 处理关联描述(兼容对象和字符串格式) + const getRelationDesc = () => { + const relationDesc = stock?.relation_desc; + + if (!relationDesc) return null; + + if (typeof relationDesc === 'string') { + return relationDesc; + } else if (typeof relationDesc === 'object' && relationDesc.data && Array.isArray(relationDesc.data)) { + // 新格式:{data: [{query_part: "...", sentences: "..."}]} + return relationDesc.data + .map(item => item.query_part || item.sentences || '') + .filter(s => s) + .join(';') || null; + } + + return null; + }; + // 预加载数据 const preloadData = async (type) => { if (!stock || preloadedData[type]) return; @@ -539,10 +558,10 @@ const StockChartModal = ({
- {stock?.relation_desc && ( + {getRelationDesc() && ( 关联描述: - {stock.relation_desc} + {getRelationDesc()} )} diff --git a/src/views/Community/components/DynamicNewsDetail/StockListItem.js b/src/views/Community/components/DynamicNewsDetail/StockListItem.js index 0eeb2d6d..df1b6262 100644 --- a/src/views/Community/components/DynamicNewsDetail/StockListItem.js +++ b/src/views/Community/components/DynamicNewsDetail/StockListItem.js @@ -106,6 +106,8 @@ const StockListItem = ({ borderColor={borderColor} borderRadius="md" p={4} + onClick={handleViewDetail} + cursor="pointer" _hover={{ boxShadow: 'md', borderColor: 'blue.300', @@ -155,7 +157,10 @@ const StockListItem = ({ @@ -169,7 +174,7 @@ const StockListItem = ({ {/* 左侧:分时图 */} - + e.stopPropagation()}> 分时图 @@ -181,7 +186,7 @@ const StockListItem = ({ {/* 右侧:K线图 */} - + e.stopPropagation()}> 日K线 @@ -213,7 +218,10 @@ const StockListItem = ({ size="xs" variant="link" colorScheme="blue" - onClick={() => setIsDescExpanded(!isDescExpanded)} + onClick={(e) => { + e.stopPropagation(); + setIsDescExpanded(!isDescExpanded); + }} mt={1} > {isDescExpanded ? '收起' : '展开'}