我要做的是在日期范围上设置日期但是有一个错误
Type 'Date[]' is not assignable to type '[Date?, Date?]'.
Types of property 'length' are incompatible.
Type 'number' is not assignable to type '0 | 1 | 2'
代码:
const [ dateRange, setDateRange] = useState([new Date('2017-02-01'), new Date('2017-05-20')]);
<DateRangePicker
value={dateRange}
onChange={value => {
this.setState({ value });
console.log(value);
}} />
正确的方法是从rsuite
中导入valuetype。import {ValueType} from "rsuite/lib/DateRangePicker";
然后在useState
中定义它const [ dateRange, setDateRange] = useState<ValueType>([new Date('2017-02-01'), new Date('2017-05-20')])
<DateRangePicker
value={dateRange}
onChange={value => {
setDateRange(value);
}}
/>
最简单但不是"right"用cast
this.setState({ value: value as [Date?, Date?]});
或
onChange={value:[Date, Date] => {
最好在onChange函数中使用输入值变量
创建[Date?, Date?]
变量