0

useTransitionからの復帰が完了したときに、自分の状態を変更できるようにしたい。つまり、現在、以下の例ではisPendingtrue から false に切り替えていますが、それだけでは十分ではありません。その変更でコードを実行できるようにしたい。

useEffectつまり、以下の例では、保留中のイベントが変更されたときに実行から返されるコードを実行できるようにしたいと考えていますstartTransitionが、それは機能しません。

他のオプションはありますか?

onClick={() => {
          startTransition(() => {
            const nextUserId = getNextId(resource.userId);
            setResource(fetchProfileData(nextUserId));
            return () => { DO THIS CODE WHEN PENDING BECOMES FALSE }
          });
        }}
function App() {
  const [resource, setResource] = useState(initialResource);
  const [startTransition, isPending] = useTransition({
    timeoutMs: 3000
  });
  return (
    <>
      <button
        disabled={isPending}
        onClick={() => {
          startTransition(() => {
            const nextUserId = getNextId(resource.userId);
            setResource(fetchProfileData(nextUserId));
          });
        }}
      >
        Next
      </button>
      {isPending ? " Loading..." : null}
      <ProfilePage resource={resource} />
    </>
  );
}
4

1 に答える 1