スキル vercel-react-view-transitions
📦

vercel-react-view-transitions

安全

Reactアプリにネイティブビュートランジションを追加

Reactアプリにスムーズなページ遷移と共有要素アニメーションを追加するには、View Transitions APIとその統合パターンを理解する必要があります。このスキルは、Vercel LabsによるCSSレシピとNext.jsパターンを使用したステップバイステップのガイダンスを提供します。

対応: Claude Codex Code(CC)
🥈 79 シルバー
1

スキルZIPをダウンロード

2

Claudeでアップロード

設定 → 機能 → スキル → スキルをアップロードへ移動

3

オンにして利用開始

テストする

「vercel-react-view-transitions」を使用しています。 商品リストにトランジションを追加して

期待される結果:

商品アイテムを一意のキーを持つ<ViewTransition>でラップし、::view-transition-old/new擬似要素のCSSを追加し、state変更時にアニメーションをトリガーするためにstartTransitionを使用してください。

「vercel-react-view-transitions」を使用しています。 なぜブラウザの前へボタンがアニメーションしないのですか?

期待される結果:

ブラウザの前へ/戻るボタンは同期的なpopstateイベントを使用するため、startViewTransitionと互換性がありません。明示的なURLでrouter.push()を使用してアニメーションサポートを維持してください。

「vercel-react-view-transitions」を使用しています。 リストの再配置をアニメーション化するにはどうすればいいですか?

期待される結果:

各アイテムのIDを使用して一意のview-transition-name値を割り当てます。アイテムが再配置されると、ブラウザは自動的に位置変更をキャプチャしスムーズにアニメーション化します。

セキュリティ監査

安全
v1 • 4/19/2026

All static findings are false positives. The skill is legitimate documentation from Vercel Labs for implementing React View Transitions. No malicious code patterns exist. All 781 flagged instances are benign keyword matches in markdown documentation (backticks for code formatting, words like 'keystroke' in UI context, TypeScript type names, and standard documentation URLs).

8
スキャンされたファイル
2,199
解析された行数
0
検出結果
1
総監査数
セキュリティ問題は見つかりませんでした
監査者: claude

品質スコア

59
アーキテクチャ
100
保守性
87
コンテンツ
50
コミュニティ
100
セキュリティ
91
仕様準拠

作れるもの

Next.js Appにページ遷移を追加

App Routerとexperimental viewTransitionフラグを使用して、Next.jsアプリケーションでルート間をナビゲートする際のスムーズなスライド遷移を実装します。

共有要素アニメーションを作成

商品画像がグリッドカードから詳細ページビューへ滑らかに变形するようにしネイティブモバイルアプリのようなプレミアム感を演出します。

データ読み込み状態をアニメーション化

データのフェッチ後にコンテンツが表示される際にスムーズなSuspense表示に置き換え、コンテンツの急激なちらつきを防止します。

これらのプロンプトを試す

ページ遷移を追加
ナビゲーション時にページがスライドインするように、私のNext.jsアプリにビュートランジションを追加して
共有要素を実装
商品グリッドを持っています。商品をクリック했을 때、画像がグリッドから詳細ページのヒーローへアニメーションする必要がある
アニメーションの競合を修正
Suspenseが解決されるとビュートランジションが壊れてしまいます。ネストされたアニメーションがページ遷移に干渉しないようにするにはどうすればいいですか?
方向性のあるナビゲーション
アプリに空間的深度を感じさせることができるように、ユーザーが逆方向にスライドする前方と後方のナビゲーションアニメーションを実装して

ベストプラクティス

  • 監査ステップから始める - コードを書く前に遷移が必要なすべての場所を特定する
  • カスタムアニメーションをゼロから書くよりも、スキルからCSSレシピをコピーする
  • 常にreduced-motion設定でテストし、古いブラウザのための段階的な低下を実装する

回避

  • document.startViewTransition()を直接呼び出さない - ViewTransitionコンポーネントに処理させる
  • 横方向のナビゲーション(タブ)では方向性のあるスライドを避ける - これは誤った空間的深度を暗示する
  • ViewTransitionをdiv内にラップしない - 入場/退場を有効にするにはコンポーネントが外側のラッパーである必要がある

よくある質問

どのReactバージョンが必要ですか?
React Canaryが必要です。Next.js App Routerは自動的に含まれています。他のフレームワークでは、react@canaryとreact-dom@canaryをインストールしてください。
App Routerで動作しますか?
はい。next.config.jsでexperimental.viewTransitionを有効化し、next/linkでtransitionTypes propを使用し、references/nextjs.mdのパターンを ikutiてください。
アニメーションが動作しない理由は?
ViewTransitionがコンポーネントを外側の要素としてラップしていることを確認し、トリガーとしてstartTransition/useDeferredValue/Suspenseを使用し、すべての変更でクロスフェードしたくない場合はdefault="none"を設定してください。
ブラウザサポートの処理方法は?
サポートされていないブラウザはアニメーションを正常にスキップします。css-recipes参照ファイルからのreduced-motionメディア 쿼리CSSを常に追加してください。
ブラウザの前へボタンをアニメーション化できますか?
いいえ。ブラウザの前へ/戻るボタンはstartViewTransitionと互換性のない同期的なpopstateを使用します。代わりに明示的なURLでrouter.push()を使用してください。
バックグラウンド更新中のアニメーションを阻止するにはどうすればいいですか?
ViewTransitionコンポーネントでdefault="none"を設定します。これにより、enter/exit/share propsで明示的に有効にしない限りアニメーションが無効になります。

開発者の詳細

ファイル構成