Toolverse
All skills

asyncredux-navigation

by marcglasberg

Handle navigation through actions using NavigateAction. Covers setting up the navigator key, dispatching NavigateAction for push/pop/replace, and testing navigation in isolation.

Installation

Pick a client and clone the repository into its skills directory.

Installation

Quick info

Category
Testing

About this skill

Handle navigation through actions using NavigateAction. Covers setting up the navigator key, dispatching NavigateAction for push/pop/replace, and testing navigation in isolation.

How to use

  1. Utwórz globalny klucz navigatora na początku aplikacji, dodając final navigatorKey = GlobalKey<NavigatorState>(); w pliku głównym.

  2. Zarejestruj klucz w AsyncRedux podczas inicjalizacji aplikacji, wywołując NavigateAction.setNavigatorKey(navigatorKey); w funkcji main() przed uruchomieniem aplikacji.

  3. Przekaż ten sam klucz do komponentu MaterialApp, ustawiając właściwość navigatorKey: navigatorKey w konfiguracji MaterialApp.

  4. Zdefiniuj trasy w MaterialApp, dodając mapę routes zawierającą ścieżki (np. '/', '/details', '/settings') i odpowiadające im widgety stron.

  5. Wysyłaj akcje nawigacji z dowolnego miejsca w aplikacji — użyj dispatch(NavigateAction.pushNamed('/details')) aby przejść do nowej trasy, dispatch(NavigateAction.pushReplacementNamed('/newRoute')) aby zastąpić bieżącą trasę, lub dispatch(NavigateAction.popAndPushNamed('/other')) aby wrócić i przejść do innej trasy.

  6. Testuj logikę nawigacji w testach jednostkowych, sprawdzając czy odpowiednie akcje NavigateAction są wysyłane, bez konieczności uruchamiania pełnej aplikacji Flutter.

Related skills