Flutter Redux - управление навигацией к экрану в промежуточном программном обеспечении
В моем приложении Flutter Redux есть промежуточное программное обеспечение для аутентификации, которое заботится о вызовах аутентификации пользователя к внешней службе аутентификации.
Если я хочу перенаправить на другой экран при определенных ответах (например, перейти на домашний экран, когда действие входа в систему успешно) - рекомендуется ли обрабатывать это в промежуточном программном обеспечении или есть другие подходы с наилучшей практикой?
2 ответа
Раньше я использовал избыточность в Интернете, и рекомендуется обрабатывать навигацию в промежуточном программном обеспечении, вы можете позвонить Navigator.of(context).pushNamed("youRoute")
в вашем промежуточном программном обеспечении или вы можете использовать NavigationMiddleware.
Обычно, dispatch
может запустить любое действие, в том числе пользовательский синтаксис, { api: }
или же { location: }
, Но для того, чтобы излишек понимал это, кроме { type: }
, это может быть лучше обработано redux
промежуточное программное обеспечение. Например, https://github.com/reactjs/react-router-redux
Так что мы можем сделать dispatch(push('/foo'))
где угодно, в том числе внутри любого громового действия или любого действия.
Я думаю, что порядок промежуточного программного обеспечения может иметь значение, так что об этом следует помнить. Поскольку промежуточные программы связаны друг с другом по цепочке, если вы хотите, чтобы thunk реагировал первым, возможно, промежуточное ПО маршрутизатора необходимо подключить позже.