У меня есть ответ JSON в форме ниже: Моя проблема в том, что я хочу отображать каждый ключ со значением, равным 1, как здесь, в этом ответе «пятница»: «1», и игнорировать нулевые значения. Я написал код, который показывает мне только один ключ, соответствующий значению 1. Но я хочу отобразить каждый ключ со значением 1. Пожалуйста, помогите мне. Заранее спасибо
{
"data": {
"timetable": [
{
"id": 2,
"tid": "91",
"cid": "1",
"monday": null,
"tuesday": null,
"wednesday": null,
"thursday": null,
"friday": "1",
"saturday": null,
"sunday": null,
"ti1_2": null,
"ti2_3": null,
"ti3_4": null,
"ti4_5": null,
"ti5_6": null,
"ti6_7": null,
"ti7_8": null,
"ti8_9": null,
"ti9_10": null,
"ti10_11": "10-11",
"ti11_12": null,
"ti12_13": null,
"ti13_14": null,
"ti14_15": null,
"ti15_16": null,
"ti16_17": null,
"ti17_18": null,
"ti18_19": null,
"ti19_20": null,
"ti20_21": null,
"ti21_22": null,
"ti22_23": null,
"ti23_24": null,
"created_at": "2019-02-15 10:27:57",
"updated_at": "2019-02-15 10:27:57"
}
]
},
}
Я просто хочу получить те дни в расписании, которые равны '1' и отображаются в плоском списке. то есть 'пятница': '1' Я попробовал код, это метод
getKeyByValue = (object, value) => {
for (var key in object) {
if(object[key] === value){
return (<Text>{key}</Text>);
}
}
}
метод renderItem для элемента плоского списка
<View>
<Text>{this.getKeyByValue(item , '1')}</Text>
</View>
);
and this is my flatlist
<FlatList
data={this.state.data.timetable}
renderItem={this.renderItem}
horizontal={true}
keyExtractor={(item, index) => index}
contentContainerSty`le={{
flexGrow: 1,
}} />