Я пытаюсь протестировать событие OnDidFocus в моем приложении React Native с помощью реагирующей навигации 4 и следующего прослушивателя событий:
useEffect(() => {
const willFocusSub = props.navigation.addListener(
"onDidFocus",
console.log("testing onDidFocus")
);
return () => {
willFocusSub.remove();
};
});
Когда я впервые загружаю страницу, она работает нормально, но когда я двигаюсь прочь, а затем вернитесь на тот же экран с помощью кнопки «Назад». Кажется, он не воспринимает событие фокуса.
Это мой стек
const MovieNavigator = createStackNavigator(
{
MoviesList: HomeMovies,
MovieDetail: MovieDetailScreen,
PopularMovies: PopularMoviesScreen,
CrewMember: CastDetailScreen,
GenreSearch: GenreSearchScreen,
MovieSearch: MovieSearchScreen,
},
Я в MoviesList и в событии срабатывает нормально, затем я перехожу к MovieDetail. Если я нажму Back и вернусь в MoviesList, событие onDidFocus вообще не сработает.