我如何使用第n个孩子进行反应?

问题描述 投票:0回答:1

我如何使用第n个孩子做出反应?我需要nth-child(3)添加First View。

  <ListView
        dataSource={this.state.dataSource}
          renderRow={ (rowData)=>
                <TouchableOpacity activeOpacity={0.5} onPress={() => {...}>
                  <View style={{...'}}>
                    <View style={{...}}>
                      <Text style={{...'}}>{rowData.name}</Text>
                    </View>
                  </View>
                </TouchableOpacity>
          }
      />

这是我的listView,我需要将marginBottom添加到First View(nth-child(3))。

react-native
1个回答
1
投票

你可以使用索引计数来做到这一点,renderRow给出rowID中的索引对于ex:

<ListView
  dataSource={this.state.dataSource}
    renderRow={ (rowData, sectionID, rowID, higlightRow)=>
          <TouchableOpacity activeOpacity={0.5} onPress={() => {...}>
            <View style={[rowID === 3 && {...nth-child(3)Styles}, {...otherStyles}]}>
              <View style={{...}}>
                <Text style={{...'}}>{rowData.name}</Text>
              </View>
            </View>
          </TouchableOpacity>
    }
/>

如果这有帮助,请告诉我。工作示例:https://snack.expo.io/rkC_FUEUV

© www.soinside.com 2019 - 2024. All rights reserved.