我正在使用 React,如果 this.state.message === 'failed'
,我正在尝试显示此错误消息。但我真的不确定为什么这个三元运算不起作用。我在这里做错了什么?
render() {
...
<div className="row">
return (this.state.message === 'failed') ? ( =>{" "}
{
<div className="alert alert-danger" role="alert">
Something went wrong
</div>
}
)() : false; }
</div>
}
现在它只是在 html 中显示 return (this.state.message === 'failed') ? ( =>
原文由 Modelesq 发布,翻译遵循 CC BY-SA 4.0 许可协议
我目前喜欢在反应中像这样格式化我的三元组:
IIFE 可以在渲染语句和三元表达式中使用,这是正确的。使用普通的
if .. else
语句是有效的,但是render
函数的返回语句只能包含表达式,因此您必须在其他地方执行这些操作。