Files
lx-music-mobile-mod/src/navigation/registerScreens.js
2021-05-20 17:04:39 +08:00

45 lines
1.0 KiB
JavaScript

// @flow
import React from 'react'
import { Navigation } from 'react-native-navigation'
import {
Home,
PlayDetail,
// Setting,
} from '@/screens'
import { Provider } from '@/store'
import {
HOME_SCREEN,
PLAY_DETAIL_SCREEN,
VERSION_MODAL,
PACT_MODAL,
// SETTING_SCREEN,
} from './screenNames'
import VersionModal from './components/VersionModal'
import PactModal from './components/PactModal'
function WrappedComponent(Component) {
return function inject(props) {
const EnhancedComponent = () => (
<Provider>
<Component
{...props}
/>
</Provider>
)
return <EnhancedComponent />
}
}
export default () => {
Navigation.registerComponent(HOME_SCREEN, () => WrappedComponent(Home))
Navigation.registerComponent(PLAY_DETAIL_SCREEN, () => WrappedComponent(PlayDetail))
Navigation.registerComponent(VERSION_MODAL, () => WrappedComponent(VersionModal))
Navigation.registerComponent(PACT_MODAL, () => WrappedComponent(PactModal))
console.info('All screens have been registered...')
}