[英]React Native Conditional Mapping Return
我有一个数组splitByDay
:
Array [
Object {
"Day": "Sunday",
"data": "Upper",
},
Object {
"Day": "Monday",
"data": "Lower",
},
]
和一个功能:
const getDay = (it) => {
splitByDay.map((x, i) => {
let day = x["Day"];
if (day === it){
return x["data"]
} else { return "Rest" }
})
}
在FlatList
中,我传入it
是当天。
如果日期对齐,我的目标是返回相应的data
。 这是它的名称:
<Text style={[tailwind(`text-gray-300 font-[400px] text-[11px]`), {color: item === currentDay ? colors.purple : 'white'}]}>{getDay(item)}</Text>
问题是您尝试在 map 函数中一次过滤和映射数据。 你应该把它分开,首先过滤数据,然后映射你想要的数据。
例如这段代码:
const getDay = (it) => {
return splitByDay.filter((x)=> x["Day"] === it).map((x) => x["Data"])[0]
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.