Routers
Routers define a component's navigation state, and they allow the developer to define paths and actions that can be handled.
Built-In Routers
react-navigation
ships with a few standard routers:
Using Routers
To make a navigator manually, put a static router
on a component.
Now you can use this component as a screen
in another navigator, and the navigation logic for MyNavigator
will be defined by this StackRouter
.
Customizing Routers
See the Custom Router API spec to learn about the API of StackRouter
and TabRouter
. You can override the router functions as you see fit:
Custom Navigation Actions
To override navigation behavior, you can override the navigation state logic in getStateForAction
, and manually manipulate the routes
and index
.
Blocking Navigation Actions
Sometimes you may want to prevent some navigation activity, depending on your route.
Handling Custom URIs
Perhaps your app has a unique URI which the built-in routers cannot handle. You can always extend the router getActionForPathAndParams
.