refactor: 恢复 TradingTimeFilter 到原版本
- 移除 timeRange prop 及其同步逻辑 - 恢复原有的 value 同步逻辑 - 简化组件接口 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -26,11 +26,12 @@ const TradingTimeFilter = ({ value, onChange }) => {
|
|||||||
setSelectedKey(null);
|
setSelectedKey(null);
|
||||||
setCustomRange(null);
|
setCustomRange(null);
|
||||||
logger.debug('TradingTimeFilter', '外部重置,清空选中状态');
|
logger.debug('TradingTimeFilter', '外部重置,清空选中状态');
|
||||||
} else if (value !== selectedKey) {
|
} else {
|
||||||
// 外部选中值变化,同步内部状态
|
// 外部选中值变化,同步内部状态
|
||||||
setSelectedKey(value);
|
setSelectedKey(value);
|
||||||
|
logger.debug('TradingTimeFilter', '外部value变化,同步内部状态', { value });
|
||||||
}
|
}
|
||||||
}, [value, selectedKey]);
|
}, [value]);
|
||||||
|
|
||||||
// 获取当前交易时段
|
// 获取当前交易时段
|
||||||
const getCurrentTradingSession = () => {
|
const getCurrentTradingSession = () => {
|
||||||
@@ -219,21 +220,28 @@ const TradingTimeFilter = ({ value, onChange }) => {
|
|||||||
|
|
||||||
// 按钮点击处理
|
// 按钮点击处理
|
||||||
const handleButtonClick = (config) => {
|
const handleButtonClick = (config) => {
|
||||||
logger.debug('TradingTimeFilter', '按钮点击', { config });
|
logger.debug('TradingTimeFilter', '按钮点击', {
|
||||||
|
config,
|
||||||
|
currentSelectedKey: selectedKey,
|
||||||
|
willToggle: selectedKey === config.key
|
||||||
|
});
|
||||||
|
|
||||||
if (selectedKey === config.key) {
|
if (selectedKey === config.key) {
|
||||||
// 取消选中
|
// 取消选中
|
||||||
setSelectedKey(null);
|
setSelectedKey(null);
|
||||||
onChange(null);
|
onChange(null);
|
||||||
|
logger.debug('TradingTimeFilter', '取消选中', { key: config.key });
|
||||||
} else {
|
} else {
|
||||||
// 选中
|
// 选中
|
||||||
setSelectedKey(config.key);
|
setSelectedKey(config.key);
|
||||||
onChange({
|
const timeConfig = {
|
||||||
range: config.range,
|
range: config.range,
|
||||||
type: config.type,
|
type: config.type,
|
||||||
label: config.label,
|
label: config.label,
|
||||||
key: config.key
|
key: config.key
|
||||||
});
|
};
|
||||||
|
onChange(timeConfig);
|
||||||
|
logger.debug('TradingTimeFilter', '选中新按钮', { timeConfig });
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user