'use strict'; import React from 'react'; import ReactNative, { AppRegistry, Platform, StyleSheet, Dimensions, TouchableOpacity, } from 'react-native'; import { Provider, connect } from 'react-redux'; import configureStore from './store/configureStore'; import {Record, List, Map} from 'immutable'; import appInitialState from './reducers/app/appInitialState'; import plustarInitialState from './reducers/plustar/plustarInitialState'; import detailInitialState from './reducers/detail/detailInitialState'; import PlustarContainer from './containers/PlustarContainer'; import DetailContainer from './containers/DetailContainer'; import { setPlatform, setChannel, } from './reducers/app/appActions'; import { setSegment, setGender, } from './reducers/plustar/plustarActions'; import { setBrandId, setId, } from './reducers/detail/detailActions'; function getInitialState() { const _initState = { app: (new appInitialState()), plustar: (new plustarInitialState()), detail: (new detailInitialState()), }; return _initState; } function getInitSegment(type) { let segment = null; if (type == 0) { //潮流优选 segment = new (Record({ 0: new (Record({ title: '设计新潮', type: 4, })), 1: new (Record({ title: '潮流经典', type: 1, })), })); } else if (type == 1) { //明星原创 segment = new (Record({ 0: new (Record({ title: '原创潮牌', type: 3, })), 1: new (Record({ title: '明星潮品', type: 2, })), })); } return segment; } export default function native(platform) { let YH_Plustar = React.createClass({ render() { const store = configureStore(getInitialState()); store.dispatch(setPlatform(platform)); let type = this.props.type; if (type == 'detail') { let id = this.props.id; store.dispatch(setId(id)); return ( <Provider store={store}> <DetailContainer /> </Provider> ); } else { let segment = getInitSegment(this.props.initType); store.dispatch(setSegment(segment)); if (this.props.initType == 0) { let gender = this.props.genderType; store.dispatch(setGender(gender)); } return ( <Provider store={store}> <PlustarContainer /> </Provider> ); } } }); AppRegistry.registerComponent('YH_Plustar', () => YH_Plustar); } let styles = StyleSheet.create({ });