我想使用react-native-calendars来突出显示带有'markedDates‘的事件。
我正在尝试做的事情如下:
日历第一次呈现当前月份-->调度重复操作以使用显示月份的日期更新重复状态-->在markedDates中,我使用一个函数从重复状态读取要标记的日期
当切换到下一个月时,同样的情况再次发生-->调度redux操作来获取当前显示月份的数据--> markedDates中的函数返回更新的对象
这适用于第一次渲染,但我不能动态更新markedDates属性。
我明白,markedDates必须是不变的,这实际上是我的问题(我想--我在react-natvie中还是个菜鸟)。
完全重新呈现日历组件是可以的-但是foreRender()或shoudComponentUpdate()没有帮助。
你知道如何让这个日历组件动态化吗?或者有任何关于日历和议程视图的其他组件的建议吗?
谢谢!
发布于 2020-11-15 16:32:19
对于所有通读这个描述的人来说--这就是答案。
这不是react-native-calendars组件的问题。
问题出在我的代码中,我试图从本地状态而不是从redux状态读取markedDates。
为了将redux-store中存储的日期转换为react-native-calendars组件的正确格式,需要一些逻辑。
我试图在我的组件中有一个函数来做这个函数,当组件重新加载时,这个函数从未被触发过。
无论如何,我重构了redux-action来为我做转换,并将markedDates存储在redux-state中以备使用。
这招很管用,对我来说很完美。
https://stackoverflow.com/questions/64832360
复制相似问题