В React-Native, как я могу вызвать popToTop() для каждой вкладки NavigatorIOS в TabBarIOS?
У приложения, которое я создаю, есть корневой клиентский объект, который влияет на все последующие представления приложения. Я хочу, чтобы пользователь мог менять клиентов и сбрасывать все вкладки, т.е. popToTop()
и обновите клиент соответствующим образом.
у меня есть TabBarIOS
компонент с 4 вкладками, каждая вкладка является NavigatorIOS
компонент, который управляет последующим ListView
компоненты. Как я могу заставить все компоненты NavigatorIOS popToTop()
и повторно сделать рендеринг на основе изменения клиента?
Заранее спасибо.
1 ответ
Одним из простых подходов было бы использовать источник событий. Создайте источник событий и передайте его компоненту, которому принадлежит NavigatorIOS
компоненты. Владелец может использовать ref
опора каждого NavigatorIOS
компонент, чтобы получить ссылку на каждый навигатор.
Затем владелец может добавить слушателя к источнику событий и вызвать popToTop()
на каждом навигаторе, когда вызывается слушатель. Тогда это просто вопрос о событии, когда это уместно.