feat: 个股中心复用 TradeDatePicker 日期选择器组件
- StockOverview: 替换 Popover 日期选择器为 TradeDatePicker - StockOverview: 修复 selectedDate 类型从字符串改为 Date 对象 - StockOverview: 隐藏"最新交易日期"提示 - TradeDatePicker: 新增 minDate 属性支持日期范围限制 - 日期选择器可选范围限制为 tradingDays 数据范围 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -19,6 +19,8 @@ export interface TradeDatePickerProps {
|
||||
defaultDate?: Date;
|
||||
/** 最新交易日期(用于显示提示) */
|
||||
latestTradeDate?: Date | null;
|
||||
/** 最小可选日期 */
|
||||
minDate?: Date;
|
||||
/** 最大可选日期,默认今天 */
|
||||
maxDate?: Date;
|
||||
/** 标签文字,默认"交易日期" */
|
||||
@@ -40,6 +42,7 @@ const TradeDatePicker: React.FC<TradeDatePickerProps> = ({
|
||||
onChange,
|
||||
defaultDate,
|
||||
latestTradeDate,
|
||||
minDate,
|
||||
maxDate,
|
||||
label = '交易日期',
|
||||
inputWidth = { base: '100%', lg: '200px' },
|
||||
@@ -76,7 +79,8 @@ const TradeDatePicker: React.FC<TradeDatePickerProps> = ({
|
||||
return date.toISOString().split('T')[0];
|
||||
};
|
||||
|
||||
// 计算最大日期
|
||||
// 计算日期范围
|
||||
const minDateStr = minDate ? formatDateValue(minDate) : undefined;
|
||||
const maxDateStr = maxDate
|
||||
? formatDateValue(maxDate)
|
||||
: new Date().toISOString().split('T')[0];
|
||||
@@ -96,6 +100,7 @@ const TradeDatePicker: React.FC<TradeDatePickerProps> = ({
|
||||
type="date"
|
||||
value={formatDateValue(value)}
|
||||
onChange={handleDateChange}
|
||||
min={minDateStr}
|
||||
max={maxDateStr}
|
||||
width={inputWidth}
|
||||
focusBorderColor="purple.500"
|
||||
|
||||
Reference in New Issue
Block a user