如何在反应原生的 NavigatorIOS 中重置导航堆栈(和缓存的屏幕)?

How can I reset the navigation stack (and cached screens) in NavigatorIOS on react-native?

我将 NavigatorIOS 设置为显示由从我们的服务器获取的 JSON 文件填充的屏幕。此文件缓存在本地,因此该应用也可以 运行 离线。

当服务器更新 JSON 时,应用程序会在后台下载新的 JSON,然后发出一个事件告诉应用程序重置导航堆栈并使用新的 JSON ] 文件前进。在大多数情况下,这很好用。

我遇到的问题是之前在导航堆栈中查看过的屏幕仍然被缓存(大概是 NavigatorIOS/React-Native)并且不使用最新的 JSON 数据。

不过,如果我退出并重新启动该应用程序,它确实有效

有没有办法清除导航堆栈上的屏幕缓存,或者强制执行 refresh/reload?

使用 popToTop() 不会重新挂载初始组件,因此不会更新传递的任何道具。