我的日历组件JSX中具有以下内容:
components={{
dateCellWrapper: ({children, value}) =>
React.cloneElement(Children.only(children), {
style: {
...children.style,
backgroundColor: calendarDest.map((x,i) =>
moment(value).add('days', 1).isBetween(x.dtArrive,x.dtDepart)?
colors[i]: 'white'),
opacity: .25
},
})
}}
它位于无状态功能组件中。
我上面有calendarDest
,是通过useEffect
钩子更新为状态的,该钩子每次道具更改时都会更新状态。
日历组件的状态正确更新,但是在components={{...}}
中访问的子代仅反映父组件的初始状态。