Vue プロジェクトにおけるトランジション コンポーネントの適用の概要

Vue プロジェクトにおけるトランジション コンポーネントの適用の概要

​Vue のトランジションは、アニメーション トランジションをカプセル化するコンポーネントです。一般的なシナリオでは、トランジション タグでラップされた DOM にアニメーション効果が含まれます。トランジション コンポーネントのアニメーション効果トランジション設定は、CSS の transition プロパティ設定に基づいています。ここでは、プロジェクトにおける Vue のトランジション コンポーネントの適用について紹介します。

単一のポップアップアプリケーション

知らせ:

  • 名前の部分は、次のスタイルクラスの先頭部分と同じです。
  • アニメーション効果の実行に協力するためにv-ifを使用する
<テンプレート>
  <div>
  <button v-on:click="表示 = !表示">
    トグル
  </ボタン>
  <トランジション名="フェード">
    <p v-if="show">こんにちは</p>
  </トランジション>
  </div>
</テンプレート>

<スクリプト>
エクスポートデフォルト{
  データ () {
    戻る {
      表示: 真
    }
  },
}
</スクリプト>

<style スコープ lang="less">
.フェード-エンター-アクティブ、
.フェードアウトアクティブ{
  遷移: すべて .5 秒;
}
 .フェードアウト{
  不透明度: 0;
  変換: translateX(20px);
}
.フェードエンター{
  不透明度: 0;
  変換: translateX(-20px);
}
</スタイル>

コンテンツ切り替え制御効果

知らせ:

  1. key: 任意の値を指定でき、アニメーションの切り替えはキー値の切り替えによって制御されます。 コンポーネントは任意であり、変更せずにそのままにしておくことができます。変更するかどうかはあなた次第です。 is を使用したコンポーネント タグを使用することも、v-if を直接使用することもできます。
  2. キーにバインドされたコンポーネントは絶対位置に設定する必要があります。そうしないと、切り替え時に遅延が発生します。 mode="out-in" または mode="in-out" を順に設定することもできます。 それはあなたの個人的なニーズによって異なります。
<テンプレート>
  <div>
    <トランジション名="フェード">
      <button class="position" @click="change" :key="status">
        コンポーネント</button>
    </トランジション>
  </div>
</テンプレート>

<スクリプト>
エクスポートデフォルト{
  データ () {
    戻る {
      ステータス: '1'、
    }
  },
  メソッド: {
    変化 () {
      if(this.docState === '1'){
        this.docState = '2'
      }それ以外{
        this.docState = '1'
      }
    }
  }
}
</スクリプト>

<style スコープ lang="less">
.フェード-エンター-アクティブ、
.フェードアウトアクティブ{
  遷移: すべて .5 秒;
}
 .フェードアウト{
  不透明度: 0;
  変換: translateX(20px);
}
.フェードエンター{
  不透明度: 0;
  変換: translateX(-20px);
}
。位置{
  位置: 絶対;
}
</スタイル>

アニメーションフレームワークでの使用

知らせ

  • 名前の値は次のように設定する必要があります: custom-classes-transition
  • 表示と非表示のスタイルを制御するための enter-active-class、leave-active-class
<link href="https://cdn.jsdelivr.net/npm/[email protected]" rel="外部nofollow" rel="スタイルシート" type="text/css">

<div id="example-3">
  <ボタン @click="表示 = !表示">
    レンダリングを切り替える
  </ボタン>
  <遷移
    name="カスタムクラス遷移"
    enter-active-class="animated じゃんけん"
    leave-active-class="アニメーション bounceOutRight"
  >
    <p v-if="show">こんにちは</p>
  </トランジション>
</div>

ページが初めて読み込まれ、アニメーションが実行される

トランジションに表示を追加する

これで、Vue プロジェクトでのトランジション コンポーネントの適用に関するこの記事は終了です。Vue のトランジション コンポーネントに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後も 123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • トランジションコンポーネントのアニメーション効果を使用した Vue サンプルコード
  • 子コンポーネントでの Vue 遷移の失敗の解決策
  • Vueコンポーネントのキープアライブとトランジションの使用に関する詳細な説明
  • Vue でトランジション カプセル化コンポーネントを実装する方法
  • Vue コンポーネントの transition と transition-group を使用してトランジションアニメーションを実装します。

<<:  MySQLでNULL値を判定する際の落とし穴事例

>>:  HTMLはフォームタグを使用して登録ページのサンプルコードを実装します。

推薦する

Dockerの国内イメージソースを変更する方法

Dockerデーモンのアクセラレータを構成する設定ファイルから Docker を起動し、/etc/d...

CSSページ下部固定を実現する8つの方法の詳細な説明

ページを書いているときに、ページの内容が小さくてフッターがページの真ん中に留まってしまうといった状況...

JSは円形のプログレスバーのドラッグとスライドを実装します

この記事の例では、円形のプログレスバーのドラッグアンドスライドを実現するための具体的なJSコードを紹...

MySQL サービスとデータベース管理

目次1. サービスの開始と停止の手順1.1 Windows での MySQL 5.7 の公式 MSI...

MySQL における INSERT INTO SET の利点

MySQL データベースにデータを挿入します。以前はよく使われていた INSERT INTO テーブ...

NodeJS は画像テキスト分割を実現します

この記事では、画像テキストセグメンテーションを実装するためのNodeJSの具体的なコードを参考までに...

HTML における iFrame タグの 2 つの使用法

最近、私は「ぶどうコレクション」というプロジェクトに取り組んでいます。簡単に言うと、Budou ペー...

CSS3を使用してフォントカラーグラデーションを実装する

Animation.css を使うと公式サイトのフォントがだんだんと変わっていくのが分かりました。c...

州と市町村の連携を簡単に実現するJavaScript

この記事では、省と市の簡単な連携を実現するためのJavaScriptの具体的なコードを参考までに紹介...

Nest.js 認証検証方法の例

目次0x0 はじめに0x1 RBAC 実装0x2 クレームベースの承認0x3 統合 CASL 0x4...

Vue+js はビデオのフェードインとフェードアウト効果を実現します

Vue+jsはビデオのフェードインとフェードアウトを実現します。参考までに、具体的な内容は次のとおり...

MySQLの結合の基本原理についての簡単な説明

目次結合アルゴリズム駆動テーブルと非駆動テーブルの違い1. 単純なネストループ結合、単純なネスト、イ...

SSH経由でリモートLinuxシステムでコマンドを実行する方法

場合によっては、リモート マシンでいくつかのコマンドを実行する必要があることがあります。これが時々行...

MySQLとElasticsearch間のデータ非対称性問題の解決策

MySQLとElasticsearch間のデータ非対称性問題の解決策jdbc-input-plugi...

HTML(divレイヤー)を介してFLASHにリンクを追加するための実装コード

今日、クライアントが広告を掲載したいのですが、提供された素材は Flash です。私たちはあまり気に...