我试图在反应中使用useState
钩子,并且我想将传入的props值(startDate)设置为默认值。不幸的是,它总是设置在实际/当前日期。我这是怎么了?
我的代码:
export type CalendarProps = {
startDate: Date,
endDate: Date,
};
const SomeCalendarView: React.FC = (props: CalendarProps) => {
console.log(props.startDate);
const [selectedDay, setSelectedDay] = useState(props.startDate);
console.log(selectedDay);
....
5月12日-是我即将收到的开始日期。
5月14日-是我当前的日期/时间。
为什么我要得到实际时间?有什么想法吗?
答案 0 :(得分:0)
我不知道,我的道具日期(bottomSheet: Padding(padding: EdgeInsets.only(bottom: 0.0)),
和startDate
)会延迟,而endDate
的默认值会立即获得价值(因为道具日期是无法使用,则以实际/当前日期填充)。道具更改后,我必须使用useState
来设置状态。就像这里:
useEffect