【发布时间】:2017-07-23 15:29:27
【问题描述】:
我看到了这段代码:
const enhance = withHandlers({
signIn: ({ signIn, provider }) => () => signIn(provider)
});
我知道enhance 是一个函数。 signIn 也是一个函数,但是中间空的() 是什么意思呢?为什么不能这样:
signIn: ({signIn, provider}) => signIn(provider)
【问题讨论】:
-
signIn是一个返回函数的函数。返回的函数(当您调用signIn时)是() => signIn(provider)。它没有论据。enhance是否为函数,不知道WithHandlers返回什么是无法确定的。 -
enhance是这个高度具体的函数的一个非常抽象的名称 -
对 ES6“箭头函数”做一点研究。有很多关于它们的文章。他们将解释
()。
标签: javascript ecmascript-6 arrow-functions