我看到的Reactjs代码是这样的。。
export default authenticatedApplication ({
// a very long code
})(App);
这叫什么形式?export default name({...})(Class)
我甚至不知道谷歌该做什么。我能找到的最接近的解释是这个解释,但没有问题代码的形式。
任何编程都是关于组装编程语言的各个部分来完成您想要的操作。你不能看着一大堆代码就想着"哦,这是一个空白";。你必须看看这些片段以及它们是如何协同工作的。
所以分解一下:
authenticatedApplication
是包含函数的变量authenticatedApplication({})
调用该函数并向其传递参数authenticatedApplication({})(App)
获取调用该函数(必须是另一个函数)的返回值并调用它(将其作为参数传递给App
)export default authenticatedApplication({})()
获取该函数的返回值,并使其成为模块的默认导出
我能找到的最接近的解释是这个解释,但没有问题代码的形式。
MDN文档确实具有以下形式:
export default expression;
摘要
此代码导出函数调用authenticatedApplication
的返回值的返回值,用App
调用。
更深入
CCD_ 9是一个函数。({})
表示将对象作为参数传递的函数调用。那么(App)
意味着您将立即使用类App
调用此函数的返回值。