我想在地图内使用if语句,但是我不想切换返回值。代码:
this.example = this.state.data.map((item) => {
return(
<div>
{if(1 + 1 == 2){
data here
}}
</div>
)
})
我知道我不知道如何在反应中使用这些。但基本上,我需要根据地图内返回的徽标返回链接。因此,如果其徽标为A,则返回链接A,徽标B,链接B等。
徽标是通过api映射的,链接不是。
答案 0 :(得分:2)
this.example = this.state.data.map((item) => {
return(
<div>
{link ? <img src={link} /> : null}
</div>
)
})
答案 1 :(得分:0)
您在这里有几个选择:
1)在传递给if
方法的回调中使用return
语句和.map
值
2)使用@Dupocas提到的三元运算符
第一个选项的示例:
const nodeExample = this.state.data.map((item) => {
if (item.visibleExample) {
return (
<div>{item.titleExample}</div>
);
}
return <div>Example is not visible</div>
});
更适合您的情况的示例:
const nodeExample = this.state.data.map((item) => (
<div>
{item.visibleExample ? item.titleExample : 'Example is not visible' }
</div>
));
希望这会有所帮助。