'use strict'; import React from 'react'; import ReactNative, { AppRegistry, Platform, StyleSheet, Dimensions, TouchableOpacity, } from 'react-native'; import createReactClass from 'create-react-class'; import { Provider, connect } from 'react-redux'; import configureStore from './store/configureStore'; import {Record, List, Map} from 'immutable'; import appInitialState from './reducers/app/appInitialState'; import mineInitialState from './reducers/mine/mineInitialState'; import MineContainer from './containers/MineContainer'; import { setPlatform, setHost, setServiceHost, setGlobalHost, setSingleHost, setChannel, } from './reducers/app/appActions'; import { getMineUserInfoSuccess, getMemberBillTaskRedDotSuccess, setIsNeedShowXsrz, } from './reducers/mine/mineActions'; function getInitialState() { const _initState = { app: (new appInitialState()), mine: (new mineInitialState()), }; return _initState; } export default function native(platform) { let YH_Mine = createReactClass({ render() { const store = configureStore(getInitialState()); store.dispatch(setPlatform(platform)); store.dispatch(setHost(this.props.host)); store.dispatch(setServiceHost(this.props.serviceHost)); store.dispatch(setGlobalHost(this.props.globalApiHost)); store.dispatch(setSingleHost(this.props.singleHost)); let channel = this.props.channel; let profilesInfo = this.props.profilesInfo; let memberBillNew = this.props.memberBillNew; let isOpenXsrz = this.props.isOpenXsrz; if (profilesInfo) { profilesInfo = JSON.parse(profilesInfo); } channel && store.dispatch(setChannel(channel)); profilesInfo && store.dispatch(getMineUserInfoSuccess(profilesInfo)); memberBillNew && store.dispatch(getMemberBillTaskRedDotSuccess(memberBillNew)); store.dispatch(setIsNeedShowXsrz(isOpenXsrz)); return ( <Provider store={store}> <MineContainer /> </Provider> ); } }); AppRegistry.registerComponent('YH_Mine', () => YH_Mine); } let styles = StyleSheet.create({ });