useRevalidator

useRevalidator

概述

参考文档 ↗

对于正常数据变动(例如窗口聚焦或按间隔轮询)之外的原因,重新验证页面上的数据。

import { useRevalidator } from "react-router";

function WindowFocusRevalidator() {
  const revalidator = useRevalidator();

  useFakeWindowFocus(() => {
    revalidator.revalidate();
  });

  return (
    <div hidden={revalidator.state === "idle"}>
      Revalidating...
    </div>
  );
}

请注意,页面数据在执行 actions 后会自动重新验证。如果您发现在响应用户交互时将此 Hook 用于数据的常规 CRUD 操作,那么您可能没有充分利用 useFetcher、Form、useSubmit 等其他会自动执行此操作的 API。

函数签名

useRevalidator(): undefined
文档和示例 CC 4.0