我試圖在反應原生設計類似下面的截圖。 請注意,每個tile是從後端獲取的Product元素。在列表視圖中呈現兩個項目(圖像)在原生反應
但我無法做到這一點使用一個ListView及其renderRow方法,否認我使用任何一種InfiniteScroll組件。
目前,我正在運行一個包含2個元素的循環,並在滾動視圖中呈現2個元素。以下是我的代碼更好地解釋。
render() {
var elem = [];
for(var i = 0; i < this.state.products.length; i+=2) {
var prod = this.state.products[i];
var prod2 = this.state.products[i + 1];
elem.push(
<View style={styles.view} key={i} >
<ProductTile onPressAction={this._pdpPage} prod={prod} index={i} />
<ProductTile onPressAction={this._pdpPage} prod={prod2} index={i + 1} />
</View>
);
}
return (
<ScrollView>
{elem}
</ScrollView>
)
}
然後基於索引prop,我將元素左對齊或右對齊。 我查看風格看起來象下面這樣:
view: {
flex: 1,
flexDirection: 'row',
},
請提出一個更好的方式來做到這一點。
在此先感謝。
謝謝我現在使用這個。這是更簡單:) –