这是一个愚蠢的问题,但我经常看到一种我不理解但我必须使用的语法 例如:
function Navbar(style) {
console.log(style);
}
export default injectSheet(style)(Navbar);
它似乎是这样工作的:首先执行第一个函数并调用()
中传递的第二个函数,并使用第一个函数返回的参数作为参数。
使用我不理解的东西不仅感觉不对,而且也是一个问题,因为我不知道何时使用它/不使用它(我是否需要使用此功能的转换器,我可以在没有{{1}的情况下使用它默认,什么是优点缺点,谁工作)等。
答案 0 :(得分:1)
这不是特殊语法,它只是默认导出表达式:
export default (injectSheet(style)(Navbar));
injectSheet
被定义为curried函数,它将函数作为其第二个参数。它的工作方式与您描述的完全相同。