我已经尝试了很多针对类似问题的答案,但没有解决我的问题,因为我正在更改一个函数中的状态,我在按下第三方库中的按钮时调用该函数我'我正在使用。
我正在使用 react-native-horizontal-date-picker 并在选择一个日期时调用一个函数来更改状态。
<HorizontalDatePicker
pickerType={'date'}
dayFormat={'Do'}
monthFormat={'MMM'}
yearFormat={'YYYY'}
returnDateFormat={'DD-MM-YYYY'}
onDateSelected={(date) => {
if (date) {
getTimeData()
}
}}
/>
然后在我的 getTimeData
函数中更新 const [timeSlots, setTimeSlots] = useState([]);
状态:
function getTimeData() {
...
if (timeAvailable) {
setTimeSlots(finalTimeSlots)
} else if (!timeAvailable) {
setTimeSlots([])
}
...
}
基于 timeSlots
数组,我正在更新 UI,现在我必须在日期上点按两次才能看到呈现的结果。
我将 timeSlots
传递给我制作的另一个自定义组件:
<TimePicker timeSlotsArray={timeSlots} />
在这种情况下我如何实现这一点?