【发布时间】:2020-10-23 00:48:30
【问题描述】:
我必须这样做:
email ? do_this : icon ? do_that : do_something_else
这可以使用嵌套三元非常简单地完成,但 this ESLint rule 无法做到这一点。
在他们的文档中,他们建议使用 if-else,但我不知道如何在我的情况下实现这一点
该代码适用于一个三进制。
return (
<td>
{email ? (
<span>...</span>
) : (
<span>...</span>
)}
</td>
添加嵌套三元将返回 ESLint 错误,使用 if-else 表示 if 是一个意外标记:
return (
<td>
{if(email) return ( <span>...</span>);
else if(icon) return ( <span>...</span>);
else return ( <span>...</span>);
}
</td>
这个问题能解决吗?
【问题讨论】:
-
我曾经创建一个在这些情况下返回布尔值的函数
-
@FelixKling,这是项目的规则。我不想禁用规则,但想找到解决方法
-
你可以这样做:
{!!email && <span>..</span>},{!email && !!icon && <span>..</span>},{<!email && !icon && <span>..</span>}
标签: javascript reactjs jsx eslint conditional-operator