Ниже представлена моя функция плоского списка renderrow, не обеспечивающая этого условия this.state.date.format('YYYYMMDD') <= moment(item.tarih).format('YYYYMMDD') && this.state.secilenAyBasi.year() == moment(item.tarih).format('YYYY') ?
, и функция renderRow возвращает ноль для всех элементов (так что, если элемент не возвращается), возвращает компоненту просто хочу, как я это делаю, я пробовал реквизиты ListEmptyComponent, но яне хотел результата спасибо
renderRow = (item,index) => {
return (
this.state.date.format('YYYYMMDD') <= moment(item.tarih).format('YYYYMMDD') && this.state.secilenAyBasi.year() == moment(item.tarih).format('YYYY') ?
<View>
{!this.aynıTarihmi(item,index) ?
<View style={styles.etkinlikTarihContainer}>
<Text style={styles.etkinlikTarihText}>
{moment(item.tarih).format('DD MMMM YYYY')}
</Text>
</View> : null}
<TouchableOpacity style={[styles.etkinlikView,this.aynıTarihmi(item,index) ? {borderTopWidth: 0, borderBottomWidth: 1 }: null]}>
<View style={{alignItems: 'center', minWidth:70}}>
{item.mod_txt != "Tüm Gün" ?
<View style={{alignItems: 'center', justifyContent:'center'}}>
{this.getTime(item.baslangic)}
{this.getTime(parseInt(item.baslangic, 10) +parseInt(item.sure, 10))}
</View> :
item.mod_txt == "Tüm Gün" ?
<Text style={{color:'black'}}> Tüm Gün </Text> : null}
</View>
<View
style={[styles.etkinlikBordorView,{borderRightColor: item.renk ? item.renk : 'green'}]}
/>
<View style={{justifyContent: 'flex-start'}}>
<Text style={{fontSize: 15, marginLeft: 5,color:'black',marginVertical:5}}>
{item.metin ? item.metin : 'Etkinlik Yok'}
</Text>
</View>
</TouchableOpacity>
</View> : null
)}
это мой плоский список компонента:
getActivity() {
return (
<View style={styles.etkinlikContainer}>
<FlatList
data={this.state.takvimgirdileriStt}
extraData={this.state.date}
renderItem={({item,index}) =>this.renderRow(item, index)}
keyExtractor = {(item,index) => index.toString()}
/>
</View>
)
}