在我的应用程序中,我有一个选择器,用于检查它所提取的数据是否过时。如果它不是陈旧的,则选择器返回数据;否则它不会。它通过比较当前时间(通过new Date()
)和数据加载的时间来检查陈旧性。
然而,当尝试在Redux开发工具中执行刷新时,由于时间不是Redux存储的一部分,因此选择器将调用数据陈旧,即使在操作时它不是&#39 ;吨
因此核心问题似乎是Redux不再是单一的事实来源 - 时钟时间现在是外部依赖。那么,目标是将选择器作为Redux状态的一部分进行访问的时钟时间,以便正确地进行时间旅行调试。
但是,让Redux商店的访问调度状态转换的最优雅方式是什么?一种方法是每次访问选择器时手动添加updateTime()
调度,但这需要记住每次调用选择器进行调用时,我发现它不太理想。
另一个浮动选项是跟踪每个状态转换时的当前时间,但这并没有帮助,因为它在访问时实际上并没有触发更新,而是仅限于国家自己改变了。
其他人如何处理这个问题?我没能找到一个很好的解决方案。谢谢!