我有一个嵌套的地图循环(用于渲染每天的外部,以及用于在一天内渲染元素的内部。我遇到的问题是,返回块中没有返回任何内容。应该是渲染的东西,没有任何东西。首先,我不确定为什么没有返回,当我只有一个循环(第一天的元素)。第二,有没有办法可能结合环
{
daysArray.map(days => {
var dayState = eval('global.that.state.' + days);
var dayStateArray = Object.values(dayState);
dayStateArray.map(i => {
return (
<Card
style={{ justifyContent: 'center', alignItems: 'center' }}
key = {i.id}
>
<Text key={i.name}>{i.name.replace('&', '&')}</Text>
<Text key={i.start_timestamp}>Starting: {i.start_timestamp</Text>
<Text key={i.end_timestamp}>Ending: {i.end_timestamp}</Text
</Card>
)
})
})
}
答案 0 :(得分:1)
没有渲染任何内容的原因是因为第一张地图没有返回任何内容。您需要返回要渲染的元素的嵌套映射。
{
daysArray.map(days => {
var dayState = eval('global.that.state.' + days);
var dayStateArray = Object.values(dayState);
return dayStateArray.map(i => {
return (
<Card
style={{ justifyContent: 'center', alignItems: 'center' }}
key={i.id}
>
<Text key={i.name}>{i.name.replace('&', '&')}</Text>
<Text key={i.start_timestamp}>Starting: {i.start_timestamp}</Text>
<Text key={i.end_timestamp}>Ending: {i.end_timestamp}</Text>
</Card>
)
})
})
}
答案 1 :(得分:1)
我认为内部map函数将值返回到外部map函数。所以使用内部map函数返回返回外部map函数。
我有一个示例代码段:
var a=[[1,2,3],[4,5,6]]
var b=a.map((x)=>{
let c= x.map((y)=>{
console.log(y)
return y*2
})
return c
})
console.log(b)