高阶函数和高阶组件

57 阅读1分钟

高阶函数

  • 一类特别的函数
    • 接受函数类型的参数
    • 返回值是函数
  • 常见
    • 定时器: setTimeout()/setInterval()
    • Promise: Promise(() => {}) then(value => {}, reason => {})
    • 数组遍历相关的方法: forEach()/filter()/map()/reduce()/find()/findIndex()
    • 函数对象的bind()
    • Form.create()() / getFieldDecorator()()
  • 高阶函数更新动态, 更加具有扩展性

高阶组件

  • 本质就是一个函数
  • 接收一个组件(被包装组件), 返回一个新的组件(包装组件), 包装组件会向被包装组件传入特定属性
  • 作用: 扩展组件的功能
  • 高阶组件也是高阶函数: 接收一个组件函数, 返回是一个新的组件函数