我正在开发一个向用户显示一些信息的应用程序。该信息每天更改多次(有时每小时更改多次)。
我正在使用Firebase并为此信息设置监听器。
我担心的情况是侦听器中发生了某些事情,用户然后更新应用程序的唯一方法是关闭它并重新启动以触发新的侦听器。
答案 0 :(得分:0)
建议:您还应该提供一个重试功能,以检查侦听器的状态是否消失,然后重试[在网络中断的情况下很有帮助],此外,您还应该为用户提供一种刷新机制,因为它可以改善UX;)
答案 1 :(得分:0)
您必须先了解react组件的生命周期,然后才能listener will always be a part of some component and listener will be initialized when some component is initialized into the memory
,而且一旦从内存中卸载了该组件,监听器的生命就取决于该组件,因此特定的监听器将不会被调用,因此现在答案你的第一个问题是。
and that component is unmounted from the memory your listener will not work
中。现在是第二个问题,我的第一个答案几乎可以回答。
因此,正如我在第一个答案中所述,在从内存中卸载该组件之前,除非您关闭应用程序或操作系统由于某种原因but as long as the component keeps mounted into the memory your listener will keep working
杀死应用程序,否则侦听器将起作用。 >
我相信在您的情况下添加拉动刷新更为方便另一个选择是,您可以混合使用导航库When the user focuses on some screen then you can fetch newer data
的更改侦听器和焦点侦听器,并且始终这样新数据将显示instead of manual refresh
。