/react-native-dva-starter

a React Native starter powered by dva and react-navigation

Primary LanguageJavaScript

react-native-dva-starter

a React Native starter powered by dva and react-navigation

Start

yarn # or npm install
react-native run-ios # or react-native run-android

Advance

The builtin router of dva (not react-router v4), doesn't support React Native, we have to integrate other router components, such as Navigator, ExperimentalNavigation, react-native-router-flux and react-navigation. Since the former two will be depreciated in flavor of react-navigation, which is also be recommended by official, so I choose it to be the navigator.

In this starter, I provide a router model to control the default action flow of react-navigation to workaround a known issue. If you don't need this, the integration will be much simpler, you can simply remove the router model and pass routerReducer to extraReducer of dva extraReducers: { router: routerReducer }. Read Redux Integration and dva's API for more information.

Also there is another workaround for a missing feature react-navigation/react-navigation#232, so I use two StackNavigators to contain the screens with different transition animations, you can create you own transition animations via transitionConfig, see react-navigation/react-navigation#99

LICENSE

MIT