xccjk / x-blog

学习笔记
18 stars 2 forks source link

高阶函数的常见使用方式? #13

Closed xccjk closed 2 years ago

xccjk commented 4 years ago

高阶函数

使用方式

高阶函数使应用场景

原理

高阶组件使用注意事项

示例

  import React from 'react'

  function HOC(WrapComponent) {
    function ChildComponent(props) {
      const add = (a, b) => {
        return a + b
      }
      const newProps = { type: 'hoc', add }
      return <WrapComponent {...props} {...newProps} />
    }
    return ChildComponent
  }

  // @HOC
  function HocComponent(props) {
    console.log(props) // { type: 'hoc', add: f(){} }
    const { add } = props
    console.log(add(1, 2))
    return (
      <div>HocPage</div>
    )
  }

  const newHocComponent = HOC(HocComponent)

  export default newHocComponent