我正在尝试在React中进行条件渲染(仅在存在props时才映射和渲染)。
render() {
if (this.props.res) {
return(
<div>{this.props.res.map(item => <li key={item.id}>{item.subreddit}</li>}</div>
)
} else {
return null
}
}
但是我有这个错误:
Parsing error: Unexpected token, expected ","
为什么会这样,我该如何解决?或者以另一种方式,有没有更好的方式实现我的目的?
答案 0 :(得分:3)
存在语法错误,map(...)
没有右括号。
应该是:
<div>{this.props.res.map(item => <li key={item.id}>{item.subreddit}</li>)}</div>
答案 1 :(得分:1)
这是我看到的问题:
map
缺少右括号true
)<ul/>
render() {
const { res } = this.props;
return !res.length ? null : (
<ul>{res.map(item => <li key={item.id}>{item.subreddit}</li>)}</ul>
);
}
答案 2 :(得分:0)
submit
答案 3 :(得分:0)
地图末尾缺少括号。
render() {
return (
<div>
{
this.props.res && this.props.res.map(item => (
<li key={item.id}>{item.subreddit}</li>
))
}
</div>
);
}