diff --git a/src/views/Community/components/TradingTimeFilter.js b/src/views/Community/components/TradingTimeFilter.js index b23780a8..2ebe7d5b 100644 --- a/src/views/Community/components/TradingTimeFilter.js +++ b/src/views/Community/components/TradingTimeFilter.js @@ -26,11 +26,12 @@ const TradingTimeFilter = ({ value, onChange }) => { setSelectedKey(null); setCustomRange(null); logger.debug('TradingTimeFilter', '外部重置,清空选中状态'); - } else if (value !== selectedKey) { + } else { // 外部选中值变化,同步内部状态 setSelectedKey(value); + logger.debug('TradingTimeFilter', '外部value变化,同步内部状态', { value }); } - }, [value, selectedKey]); + }, [value]); // 获取当前交易时段 const getCurrentTradingSession = () => { @@ -219,21 +220,28 @@ const TradingTimeFilter = ({ value, onChange }) => { // 按钮点击处理 const handleButtonClick = (config) => { - logger.debug('TradingTimeFilter', '按钮点击', { config }); + logger.debug('TradingTimeFilter', '按钮点击', { + config, + currentSelectedKey: selectedKey, + willToggle: selectedKey === config.key + }); if (selectedKey === config.key) { // 取消选中 setSelectedKey(null); onChange(null); + logger.debug('TradingTimeFilter', '取消选中', { key: config.key }); } else { // 选中 setSelectedKey(config.key); - onChange({ + const timeConfig = { range: config.range, type: config.type, label: config.label, key: config.key - }); + }; + onChange(timeConfig); + logger.debug('TradingTimeFilter', '选中新按钮', { timeConfig }); } };