README
react-router
Install
Install this package with npm
npm i @salsita/react-router
or yarn
yarn add @salsita/react-router
API
Modules
Functions
- buildRouter(routes, [config], [useListenerPlugin], [useBrowserPlugin])
Builds a router with browserPlugin
- routerReducer(state, action) ⇒
RouterState The reducer of the router module
- onRouteTransition(saga, ...params)
Calls saga with params when router transition succeeds. Provides all the routes to be activated.
- onRouteEnter(route, saga, ...params)
Call saga when router transition succeeded on particular route.
- Link(props)
Renders a link
- Route(props)
Renders a component based on the match with the name of the current route
You have to set exactly one of
startsWith,endsWith, orexactprop.
Interfaces
RouterActions
See: redux-router5: Using the redux middleware
RouterSelectors
RouterSelectors.getCurrentRoute(state) ⇒ Route
Returns the current route
Kind: static method of RouterSelectors
Returns: Route - The current route
| Param | Type | Description |
|---|---|---|
| state | RootState |
The root state |
RouterSelectors.getRouteParams(state) ⇒ object
Returns the params of current route
Kind: static method of RouterSelectors
Returns: object - The current route params
| Param | Type | Description |
|---|---|---|
| state | RootState |
The root state |
LinkProps
Kind: global interface
Properties
| Name | Type | Description |
|---|---|---|
| name | string |
Route name |
| [params] | object |
Route params |
RouteProps
Kind: global interface
Properties
| Name | Type | Description |
|---|---|---|
| component | Component |
The component to render |
| [startsWith] | string |
Renders the component if the route name starts with this |
| [endsWith] | string |
Renders the component if the route name ends with this |
| [exact] | string |
Renders the component if the route name exactly matches this |
buildRouter(routes, [config], [useListenerPlugin], [useBrowserPlugin])
Builds a router with browserPlugin
Kind: global function
| Param | Type | Default | Description |
|---|---|---|---|
| routes | Array.<Route> |
An array of routes | |
| [config] | Options |
A config object for router5 | |
| [useListenerPlugin] | boolean |
false |
Add listener plugin |
| [useBrowserPlugin] | boolean |
true |
Add browser plugin |
routerReducer(state, action) ⇒ RouterState
The reducer of the router module
Kind: global function
| Param | Type | Description |
|---|---|---|
| state | RouterState |
The state of router5 |
| action | Action |
A redux action |
onRouteTransition(saga, ...params)
Calls saga with params when router transition succeeds. Provides all the routes to be activated.
Kind: global function
| Param | Type | Description |
|---|---|---|
| saga | Generator |
The saga to be called |
| ...params | any |
The params to be passed to the saga |
onRouteEnter(route, saga, ...params)
Call saga when router transition succeeded on particular route.
Kind: global function
| Param | Type | Description |
|---|---|---|
| route | string |
The route name to match |
| saga | Generator |
The saga to be called |
| ...params | any |
The params to be passed to the saga |
Link(props)
Renders a link
Kind: global function
| Param | Type | Description |
|---|---|---|
| props | LinkProps |
Properties |
Route(props)
Renders a component based on the match with the name of the current route
You have to set exactly one of startsWith, endsWith, or exact prop.
Kind: global function
| Param | Type | Description |
|---|---|---|
| props | RouteProps |
Properties |