React useUpdate钩子

在调用时强制组件重新渲染。

  • 使用useReducer()钩子,在每次更新时创建一个新对象并返回其dispatch。
const useUpdate = () => {
  const [, update] = React.useReducer(() => ({}));
  return update;
};

const MyApp = () => {
  const update = useUpdate();

  return (
    <>
      <div>时间:{Date.now()}</div>
      <button onClick={update}>更新</button>
    </>
  );
};

ReactDOM.createRoot(document.getElementById('root')).render(
  <MyApp />
);