ProductList.js
2.51 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
'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 productListInitialState from './reducers/productList/productListInitialState';
import ProductListContainer from './containers/ProductListContainer';
import screenInitialState from './reducers/screen/screenInitialState';
import screenCategoryInitialState from './reducers/screenCategory/screenCategoryInitialState';
import screenSubInitialState from './reducers/screenSub/screenSubInitialState';
import ScreenContainer from './containers/ScreenContainer';
import ScreenCategoryContainer from './containers/ScreenCategoryContainer';
import ScreenSubContainer from './containers/ScreenSubContainer';
import {
setPlatform,
setChannel,
setHost,
setType
} from './reducers/app/appActions';
import {
setBrandId,
} from './reducers/productList/productListActions';
function getInitialState() {
const _initState = {
app: (new appInitialState()),
productS: (new productListInitialState()),
screen: (new screenInitialState()),
screenCategory: (new screenCategoryInitialState()),
screenSub: (new screenSubInitialState()),
};
return _initState;
}
export default function native(platform) {
let YH_ProductListRNView = React.createClass({
render() {
const store = configureStore(getInitialState());
store.dispatch(setPlatform(platform));
let {host, channel,type,brand_id} = this.props;
store.dispatch(setHost(host));
store.dispatch(setChannel(channel));
store.dispatch(setType(type));
store.dispatch(setBrandId(brand_id));
if (type == 'YH_ScreenCategoryView' ) {
return (
<Provider store={store}>
<ScreenContainer />
</Provider>
);
} else if(type == 'YH_ProductFilterCategoryView' ){
return (
<Provider store={store}>
<ScreenCategoryContainer />
</Provider>
);
}else if (type == 'YH_ProductFilterSubView' ){
return (
<Provider store={store}>
<ScreenSubContainer />
</Provider>
);
}else if (type == 'YH_ProductListRNView' ){
return (
<Provider store={store}>
<ProductListContainer />
</Provider>
);
}
}
});
AppRegistry.registerComponent('YH_ProductListRNView', () => YH_ProductListRNView);
}
let styles = StyleSheet.create({
});