【发布时间】:2017-06-02 23:23:11
【问题描述】:
目前我正在使用以下代码根据hasLocations 变量有条件地呈现一些 HTML。
代码有效,但我想知道是否有更好的方法来实现相同的结果,例如,我不确定拥有两个 return 是否是一个好习惯。
const Finder = ({ locations, onLocationClick }) => {
let hasLocations = locations.length > 0
if (hasLocations) {
return (
<ul>
{locations.map((location, index) =>
<Location
key={index}
{...locations[index]}
onLocationClick={() => onLocationClick(location)}
/>
)}
</ul>
)
} else {
return (null)
}
}
【问题讨论】:
-
在一个函数中有多个返回并不是一个坏习惯。
-
我同意@IvankaTodorova。即使您的逻辑以某种方式中断或有缺陷,也只有一个 return 可以实际执行。
标签: javascript reactjs