Advertisement
ekantin

redux-persist

Mar 20th, 2019
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import React from 'react'
  2. import { Navigation } from 'react-native-navigation'
  3. import { REHYDRATE } from 'redux-persist'
  4.  
  5. import { registerScreen } from './src/navigation/config'
  6. import navigation from './src/navigation'
  7. import configureStore from './src/redux/configureStore'
  8.  
  9. const store = configureStore()
  10. registerScreen()
  11.  
  12. export default class App extends React.PureComponent {
  13.   constructor(props) {
  14.     super(props)
  15.     store.subscribe(this.onStoreUpdate.bind(this))
  16.   }
  17.  
  18.   onStoreUpdate() {
  19.     let isBoarding = store.getState().boarding.boardingStatus
  20.     let isLogin = store.getState().login.isLogin
  21.  
  22.     if (REHYDRATE === 'persist/REHYDRATE') {
  23.       this.startApp(isBoarding, isLogin)
  24.     }
  25.   }
  26.  
  27.   startApp(isBoarding, isLogin) {
  28.     if (isBoarding === 0) {
  29.       Navigation.events().registerAppLaunchedListener(() => {
  30.         Navigation.setRoot(navigation.boarding())
  31.       })
  32.     } else {
  33.       Navigation.events().registerAppLaunchedListener(() => {
  34.         Navigation.setRoot(navigation.login())
  35.       })
  36.     }
  37.   }
  38. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement