0

在很多文档中都可以看到这种结构的语句

export default DropTarget(types, spec, collect)(MyComponent2);

但是我不是很明白,查看了文档也找不到有描述这样的语法

export default OneClass(arg)(arg);

我的理解是exprot 一个立即执行函数吗?就好像js的立刻执行函数一样,但是这样好像又不是很合理,因为import的时候就不是一个变量了.

(function(){})()
elven 40
2019-03-15 提问

查看全部 5 个回答

0

不妨拆分开来理解,相当于如下代码:

// DropTarget 返回一个函数
var wrapper = DropTarget(types, spec, collect);
// wrapper 返回一个包装后的组件
var result = wrapper(MyComponent2);
// 导出组件
export default result;

推荐答案

0

已采纳

正常看到应该是

  export default result

上面

export default OneClass(arg)(arg);

不同之处在于OneClass(arg)(arg) , 这种调用方式类似函数柯里化,接受多个参数后,最终肯定会return result,这么看,上面两种导出方式就差不多了

你可能感兴趣的

推广链接