検索
ホームページウェブフロントエンドCSSチュートリアルReact Springを使用してアニメーションを作成します

React Springを使用してアニメーションを作成します

アニメーションをReactアプリケーションに統合することは、伝統的に困難でした。ただし、Paul Henschelが作成した強力なライブラリであるReact-Springは、プロセスを大幅に簡素化します。アニメーション化された反応と反応のモーションに基づいて、最適化されたパフォーマンスと合理化されたAPIを提供します。

このチュートリアルでは、React-Springの5つのフックのうち2つ、 useSpringuseTrail探ります。実用的な例を通じてそれらの使用を説明します。

開始するには、React-springをインストールします。

 #糸
ヤーンは反応スプリングを追加します

#npm
NPMインストールReact-spring  -  save

useSpringでアニメーション化します

useSpringフックは、州間のスムーズな移行を促進します。アニメーションの開始ポイントとエンドtoを指定するために、プロパティfrom定義します。最終状態to指示する一方from 、初期状態を設定します。

最初の例では、 useSpring使用して、画面にスライドするボックスをアニメーション化します。最初に隠されていたが、ボタンがクリックされたときに表示されます。

 「React」からReact、{UseState}をインポートします。
'ruce-spring'から{useSpring、aNIMATED}をインポートします。

const app =()=> {
  const [showcontent、setshowcontent] = uesestate(false);
  const contentProps = useSpring({
    不透明:showcontent? 1:0、
    Margintop:showcontent? 0:-1000、
    構成:{持続時間:500} //オプション:アニメーション期間を追加
  });

  戻る (
    <div classname="container">
      <button classname="button" onclick="{()"> SetShowContent(!showcontent)}>
        コンテンツを切り替えます
      </button>
      <animated.div classname="box" style="{contentProps}">
        <h1 id="このコンテンツは-React-Springのおかげで滑り落ちました">このコンテンツは、React Springのおかげで滑り落ちました!</h1>
      </animated.div>
    </div>
  );
};

useSpringフックはアニメーションを管理します。 showContentが真であると、ボックスが下にスライドして表示されます。それ以外の場合、画面外で隠されたままです。

useTrailでリストをアニメーション化します

useTrailフックは、アイテムのリストを順番にアニメーション化します。各アイテムは、前のアイテムの後にアニメーション化されます。ユーザーのリストを取得し、レンダリングをアニメーション化しましょう。

 Reactをインポート、{useState、useefcect} from 'React';
「usetrail、アニメーション}」から「react-spring」からインポート。

const app =()=> {
  const [users、setusers] = uesestate([]);
  effect(()=> {
    fetch( 'https://jsonplaceholder.typicode.com/users')
      .then(res => res.json())
      .then(data => setusers(data));
  }、[]);

  const trail = usetrail(users.length、{
    from:{marginleft:-20、ofacity:0、transform: 'translate3d(0、-40px、0)'}、
    to:{marginleft:20、ofacity:1、transform: 'translate3d(0,0px、0)'}、
    config:{mass:5、tension:2000、摩擦:200} //オプション:微調整アニメーション
  });

  戻る (
    <div>
      <h1 id="ランダムユーザー">ランダムユーザー</h1>
      {trail.map(({style}、index)=>(
        <animated.div key="{users[index]?.id}" classname="box" style="{style}">
          {users [index]?。username}
        </animated.div>
      ))}
    </div>
  );
};

useTrail 、ユーザーリストによろめきアニメーションを作成します。各ユーザー名はわずかな遅延でスライドします。スムーズなアニメーションのエラー処理とオプションの構成が含まれています。

結論

React Springは、Reactアプリケーションのアニメーションに対するユーザーフレンドリーなアプローチを提供します。創造的なアニメーションの可能性を解き放つために、その広範なドキュメントと例を調べてください。アニメーションを実装するときは、アクセシビリティを考慮してください。

以上がReact Springを使用してアニメーションを作成しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
アンカーポジショニングは、ソースの順序を気にしませんアンカーポジショニングは、ソースの順序を気にしませんApr 29, 2025 am 09:37 AM

アンカーの位置決めがHTMLソースの順序を避けているという事実は、コンテンツとプレゼンテーションの間の懸念の別の分離のため、非常にCSS-Yです。

マージンは何ですか:40px 100px 120px 80pxは意味しますか?マージンは何ですか:40px 100px 120px 80pxは意味しますか?Apr 28, 2025 pm 05:31 PM

記事では、CSSマージンプロパティ、特に「マージン:40px 100px 120px 80px」、そのアプリケーション、およびWebページレイアウトへの影響について説明します。

さまざまなCSSボーダープロパティとは何ですか?さまざまなCSSボーダープロパティとは何ですか?Apr 28, 2025 pm 05:30 PM

この記事では、カスタマイズ、ベストプラクティス、および応答性に焦点を当てたCSSボーダープロパティについて説明します。主な議論:Border-Radiusは、レスポンシブデザインに最も効果的です。

CSSの背景とは何ですか、プロパティをリストしますか?CSSの背景とは何ですか、プロパティをリストしますか?Apr 28, 2025 pm 05:29 PM

この記事では、CSSのバックグラウンドプロパティ、Webサイトの設計の強化における使用、および避けるべき一般的な間違いについて説明します。重要な焦点は、バックグラウンドサイズを使用したレスポンシブデザインです。

CSS HSLの色とは何ですか?CSS HSLの色とは何ですか?Apr 28, 2025 pm 05:28 PM

記事では、CSS HSLの色、Webデザインでの使用、およびRGBよりも利点について説明します。主な焦点は、直感的な色の操作を通じて設計とアクセシビリティを向上させることです。

CSSにコメントを追加するにはどうすればよいですか?CSSにコメントを追加するにはどうすればよいですか?Apr 28, 2025 pm 05:27 PM

この記事では、CSSでのコメントの使用について説明し、シングルラインとマルチラインのコメント構文を詳述しています。コメントはコードの読みやすさ、保守性、コラボレーションを強化するが、適切に管理されていないとウェブサイトのパフォーマンスに影響を与える可能性があると主張しています。

CSSセレクターとは何ですか?CSSセレクターとは何ですか?Apr 28, 2025 pm 05:26 PM

この記事では、HTML要素のスタイリングのCSSセレクター、その種類、および使用法について説明します。 IDとクラスのセレクターを比較し、複雑なセレクターでパフォーマンスの問題に対処します。

どのタイプのCSSが最優先事項を保持していますか?どのタイプのCSSが最優先事項を保持していますか?Apr 28, 2025 pm 05:25 PM

この記事では、CSSの優先順位について説明し、特異性が最も高いインラインスタイルに焦点を当てています。 CSS競合を管理するための特異性レベル、オーバーライド方法、およびデバッグツールを説明します。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。