useViewTransitionState

このフックは、指定された場所にアクティブな ビュートランジション がある場合に true を返します。これは、ビュートランジションをさらにカスタマイズするために、要素にきめ細かいスタイルを適用するために使用できます。これには、Link(またはFormNavLinknavigatesubmit 呼び出し)の viewTransition プロパティを介して、指定されたナビゲーションに対してビュートランジションが有効になっている必要があります。

リスト内の画像をクリックして、目的のページのヒーロー画像に展開する必要があるとします。

function NavImage({ src, alt, id }) {
  const to = `/images/${idx}`;
  const vt = useViewTransitionState(href);
  return (
    <Link to={to} viewTransition>
      <img
        src={src}
        alt={alt}
        style={{
          viewTransitionName: vt ? "image-expand" : "",
        }}
      />
    </Link>
  );
}