可能看过我以前文章的同学应该会猜得到当我用New的方法来举例学习高阶组件时,接下来要分享的就是柯里化了。高阶组件与函数柯里化的运用是非常能够提高代码逼格的技巧,如果你有剩余的精力,完全可以花点时间学习一下。
在前端基础进阶(八):深入详解函数的柯里化一文中,我有分享柯里化相关的知识。
我们普通情况下使用高阶组件,大概会如下使用。
export default withHOC(basicComponent);
而我们在学习react-redux
的时候会发现,每当我们创建一个容器组件时,就必须使用connect
将react与redux关联起来。
export default connect()(basicComponent);
或者如果有额外的参数与方法要处理时,会这样使用:
export default connect(mapStateToProps,mapDispatchToProps)(Link);
如果你对柯里化有过了解,就会发现其实这正是柯里化的一个应用。虽然说高阶组件与柯里化都属于比较难以理解的知识点,但是他们组合在一起使用时并没有新增更多的难点。因为高阶组件其实也是可以理解为普通函数的。
待定... ...
主要是想分享关于可配置的高阶组件的相关知识,暂时没想好怎么写,感觉通过柯里化来描述太难描述清楚了 蛋疼 ~ ~