...
|
...
|
@@ -54,6 +54,7 @@ export default class GoodsCell extends React.Component { |
|
|
renderHeader() {
|
|
|
return(
|
|
|
<View style={styles.titleB}>
|
|
|
<View style={{width: width,height: 0.5,backgroundColor: '#e5e5e5',}}/>
|
|
|
<View style={styles.title}>
|
|
|
<Text style={styles.text}>相关推荐</Text>
|
|
|
</View>
|
...
|
...
|
@@ -65,26 +66,63 @@ export default class GoodsCell extends React.Component { |
|
|
let {resource} = this.props;
|
|
|
let list = resource.get('productList');
|
|
|
|
|
|
if (list.size == 0) {
|
|
|
if (!list || list.size == 0) {
|
|
|
return null;
|
|
|
}
|
|
|
if (list.size == 1) {
|
|
|
let backgroundWidth = width;
|
|
|
let backgroundHeight = 40 + 80;
|
|
|
let list0 = list.toJS();
|
|
|
let obj = list0[0];
|
|
|
let product_name = obj.product_name;
|
|
|
let default_images = obj.default_images;
|
|
|
let sales_price = obj.sales_price;
|
|
|
|
|
|
let backgroundWidth = width;
|
|
|
let backgroundHeight = 40 + Math.ceil(list.size / 2) * (rowHeight+rowMarginHorizontal) + 20;
|
|
|
return(
|
|
|
<View style={{width: backgroundWidth, height:backgroundHeight, backgroundColor:'white'}}>
|
|
|
<ListView
|
|
|
contentContainerStyle={styles.contentContainer}
|
|
|
initialListSize={Math.ceil(list.size)}
|
|
|
dataSource={this.dataSource.cloneWithRows(list.toArray())}
|
|
|
renderHeader={this.renderHeader}
|
|
|
enableEmptySections={true}
|
|
|
renderRow={this.renderRow}
|
|
|
scrollEnabled={false}
|
|
|
scrollsToTop={false}
|
|
|
/>
|
|
|
</View>
|
|
|
);
|
|
|
console.log(obj);
|
|
|
return(
|
|
|
<View style={{width: backgroundWidth, height:backgroundHeight, backgroundColor:'white'}}>
|
|
|
<View style={styles.titleB}>
|
|
|
<View style={{width: width,height: 0.5,backgroundColor: '#e5e5e5',}}/>
|
|
|
<View style={styles.title}>
|
|
|
<Text style={styles.text}>相关推荐</Text>
|
|
|
</View>
|
|
|
</View>
|
|
|
<View style={styles.single_View}>
|
|
|
<Image source={{uri: default_images}} style={styles.timeThumb} resizeMode={'contain'}></Image>
|
|
|
<View style={styles.nameView}>
|
|
|
<Text style={styles.name}>{product_name}</Text>
|
|
|
<View style={styles.salesView}>
|
|
|
<Text style={styles.sales}>¥{sales_price}</Text>
|
|
|
<TouchableOpacity activeOpacity={0.5} onPress={() => {
|
|
|
// this.props.onPressBrandItem && this.props.onPressBrandItem(rowData.url, rowID);
|
|
|
}}>
|
|
|
<View style={styles.button}>
|
|
|
<Text style={styles.b}>查看详情</Text>
|
|
|
</View>
|
|
|
</TouchableOpacity>
|
|
|
</View>
|
|
|
</View>
|
|
|
</View>
|
|
|
</View>
|
|
|
);
|
|
|
}else {
|
|
|
let backgroundWidth = width;
|
|
|
let backgroundHeight = 40 + Math.ceil(list.size / 2) * (rowHeight+rowMarginHorizontal) + 20;
|
|
|
return(
|
|
|
<View style={{width: backgroundWidth, height:backgroundHeight, backgroundColor:'white'}}>
|
|
|
<ListView
|
|
|
contentContainerStyle={styles.contentContainer}
|
|
|
initialListSize={Math.ceil(list.size)}
|
|
|
dataSource={this.dataSource.cloneWithRows(list.toArray())}
|
|
|
renderHeader={this.renderHeader}
|
|
|
enableEmptySections={true}
|
|
|
renderRow={this.renderRow}
|
|
|
scrollEnabled={false}
|
|
|
scrollsToTop={false}
|
|
|
/>
|
|
|
</View>
|
|
|
);
|
|
|
}
|
|
|
}
|
|
|
};
|
|
|
|
...
|
...
|
@@ -113,8 +151,56 @@ let styles = StyleSheet.create({ |
|
|
title: {
|
|
|
alignItems: 'center',
|
|
|
justifyContent: 'center',
|
|
|
height: 39,
|
|
|
height: 39.5,
|
|
|
width:width,
|
|
|
backgroundColor: 'red',
|
|
|
},
|
|
|
text: {
|
|
|
color: 'rgb(215, 215, 215)',
|
|
|
},
|
|
|
single_View: {
|
|
|
height: 80,
|
|
|
width:width,
|
|
|
backgroundColor: 'white',
|
|
|
flexDirection: 'row',
|
|
|
},
|
|
|
nameView: {
|
|
|
height: 80,
|
|
|
width:width,
|
|
|
backgroundColor: 'white',
|
|
|
},
|
|
|
name: {
|
|
|
marginTop: 30,
|
|
|
marginLeft:15,
|
|
|
height: 20,
|
|
|
width:width,
|
|
|
backgroundColor: 'white',
|
|
|
},
|
|
|
salesView: {
|
|
|
flexDirection: 'row',
|
|
|
justifyContent: 'space-between',
|
|
|
height: 20,
|
|
|
width:width - 80,
|
|
|
backgroundColor: 'white',
|
|
|
},
|
|
|
sales: {
|
|
|
height: 20,
|
|
|
width: 100,
|
|
|
marginLeft: 15,
|
|
|
backgroundColor: 'white',
|
|
|
},
|
|
|
button: {
|
|
|
height: 20,
|
|
|
width: 60,
|
|
|
backgroundColor: 'white',
|
|
|
alignItems: 'center',
|
|
|
justifyContent: 'center',
|
|
|
borderColor: 'black',
|
|
|
borderWidth: 1,
|
|
|
borderRadius: 2,
|
|
|
},
|
|
|
timeThumb: {
|
|
|
marginLeft: 20,
|
|
|
height: 80,
|
|
|
width:40,
|
|
|
},
|
|
|
}); |
...
|
...
|
|