假设我们有一个使用ES6语法的函数,如下所示:
const AccountOverview = (props) => {
const overviewVisible = props.overviewVisible;
const accountNumber = props.accountNumber;
const toggleAccountOverview = props.toggleAccountOverview;
const onClick = (e) => {
e.preventDefault();
toggleAccountOverview(!overviewVisible, accountNumber);
};
// FIXME: eslint WHY??????
/* eslint-disable */
return (
<div
className={props.overviewVisible ? 'acc-block open' : 'acc-block'}
>
<div>
)
}
和这样的函数:
const AccountDetails = props => (
<div className="tabInner">
</div>
)
为什么使用{}声明第一个函数,而使用just()?
声明第二个函数答案 0 :(得分:1)
{}
表示箭头功能的主体,可以包含多个语句。在这种情况下,您需要显式使用return
来返回函数中的数据。
如果没有{}
,您的箭头函数必须有单个语句正文,结果将在没有return
语句的情况下隐式返回。
()
处于需要在单个语句体内返回对象的情况。像
const getObject = () => ({ name: 'Test' });
如果没有()
,它会将对象的{}
视为函数体并给出错误。