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
, orexact
prop.
Interfaces
RouterActions
See: redux-router5: Using the redux middleware
RouterSelectors
Route
RouterSelectors.getCurrentRoute(state) ⇒ Returns the current route
Kind: static method of RouterSelectors
Returns: Route
- The current route
Param | Type | Description |
---|---|---|
state | RootState |
The root state |
object
RouterSelectors.getRouteParams(state) ⇒ 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 |
RouterState
routerReducer(state, action) ⇒ 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 |