Javascript 在'new Date()'日更改时从Redux商店自动刷新React道具
我有一个React原生应用程序,每天显示一个数组中的新引用。我们的想法是,你打开应用程序,它会显示你今天的报价。明天打开它,它会显示明天的新报价 现在,我在我的一个顶级组件中的Javascript 在'new Date()'日更改时从Redux商店自动刷新React道具,javascript,reactjs,react-native,Javascript,Reactjs,React Native,我有一个React原生应用程序,每天显示一个数组中的新引用。我们的想法是,你打开应用程序,它会显示你今天的报价。明天打开它,它会显示明天的新报价 现在,我在我的一个顶级组件中的mapstatetops方法中从Redux存储中获取当前引用,如下所示: const mapStateToProps = state => { const currentQuote = getCurrentQuote( state ); return { quote: currentQuo
mapstatetops
方法中从Redux存储中获取当前引用,如下所示:
const mapStateToProps = state => {
const currentQuote = getCurrentQuote(
state
);
return {
quote: currentQuote
};
};
和getCurrentQuote
:
const getCurrentQuote = (state, day) => {
const index = getDayOfYear(!day ? new Date() : new Date(day));
return state.quotes[index];
};
我的确切问题是,如果有人打开了应用程序,并且日期发生了变化(即新的一天),那么什么都不会改变。没有新的报价
显然,我可以让用户手动刷新应用程序并更新报价,但我宁愿让它自动更新
除了持续运行setInterval
外,组件是否还有更好的方法来响应新日期
更改(即新日期)
可能
AppState
在MapStateTrop中调用getCurrentQuote函数时,尝试将new Date()作为第二个参数传递。使用setInterval
有什么问题?我不相信你的使用有什么问题it@ryan-我真的不知道,让一台无限期地运行是不对的。对内存etcI的担忧建议您改用任何react本机或节点cron库。无法发布答案,因为我没有多少信息以及它将如何应用于您的代码。