React Native:防止在navigation.goBack上触发“焦点”侦听器

问题描述

我陷入了3个屏幕的情况,即Screen1Screen2Screen3。 我在focusListener上有Screen2

当我从Screen1转到Screen2时,focusListener会根据需要触发。但是,当我从Screen2转到Screen3并返回navigation.goBack() which is default behavIoUrScreen2时,FocusListener再次触发。我不希望从FocusListener回到Screen3时触发Screen2

注意:-Screen1在不同的导航器中,而Screen2Screen3在同一导航器中。

我该如何实现?请给我建议任何解决方案。

解决方法

从屏幕1转到屏幕2时,您需要将标志传递为true值,从屏幕3到屏幕2传递相同的标志为false值,在屏幕2上检查focusListener中的标志,如果为true,则执行什么操作您想要执行的操作。

有关如何通过参数访问 https://reactnavigation.org/docs/params/