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);
|
||||
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 });
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user