React hooks总结

96 阅读1分钟

react hooks

React比较常见的hooks都有哪些?

  1. useState()
  2. useEffect()
  3. useContext()
  4. userReducer()
  5. useRef()
  6. useMemo()
  7. useCallback()

setState()

让我们可以在函数组件中,声明修改state

function Example() {
  const [count, setCount] = useState(initstate);

  return (
    <div>
      <p>You clicked {count} times</p>
      <button onClick={() => setCount(count + 1)}>Click me</button>
    </div>
  );
}

useEffect()

允许在函数组件中执行类似生命周期 的操作

参数:1.function 2.[]

[]中为空的时候,类似于生命周期的mounted,在组件渲染后执行一次function
[]中为某个具体的状态时,类似于生命周期中的updata,当状态发生改变的时候,会执行一次function

useContext()

允许在函数组件中访问 React 上下文,简化了组件之间的通信

// 创建上下文
const ThemeContext = React.createContext();

function App() {
  // 提供上下文值
  return (
    <ThemeContext.Provider value="dark">
      <SomeChild />
    </ThemeContext.Provider>
  );
}

<ThemeContext.Provider> 组件提供了一个 dark 的上下文值。此时,所有的子组件都可以通过调用 useContext 来访问这个值

useReducer

允许在函数组件中管理state,并通过actions来更新state

useRef

函数组件中访问一个可变的引用。

useCallback,useMemo

接收两个参数: 1.函数 2.依赖列表 依赖列表没有改变时,会执行函数上一次的执行结果,两者的区别主要是useMemo返回函数的执行结果,useCallback返回函数的引用