Skip to content

react 常见坑集合

仲灏2022-08-02约 1 分钟

useRef

useRef

在事件callbackRef.current中的值为初始值

tsx
export default function App() {
  const callbackRef = React.useRef(() => alert('init'))
  const callback = callbackRef.current
  return (
    <button onClick={() => (callbackRef.current = () => alert('call back'))}>setCallback</button>
  	<button onClick={callbackRef.current}>call callback</button>
  )
}

点击set的时候是更新的callback了的 但是没有触发页面重新渲染 需要强制读取callback内容 而不是拿上次的callback