Vue でよく使われる命令 v-if と v-show の違いを簡単に分析します。

Vue でよく使われる命令 v-if と v-show の違いを簡単に分析します。

序文

v-show と v-if は、一般的に使用される Vue 命令であり、一部のコード ブロックのレンダリングを決定するためによく使用されますが、この 2 つの具体的な違いは何でしょうか。 ? ?

まず、Vue 中国語コミュニティ ドキュメントの紹介を見てみましょう。

Vue 中国語コミュニティのドキュメントには、次のように簡潔に記載されています。「条件判断は初期レンダリング中に実行されます。」

1. Vショー

v-show命令の機能は、真偽値に応じて要素の表示状態を切り替えることです。

構文式 v-show = "式"

原則としては、要素の CSS プロパティ (display) を変更して、要素を表示するか非表示にするかを決定します。

命令の後のコンテンツは最終的にブール値として解析されます

値が true の場合、要素は表示され、値が false の場合、要素は非表示になります。

データが変更されると、対応する要素の表示ステータスも同期して更新されます。

<本文>
		<div id="アプリ">
			<input type="button" value="表示を切り替える" @click="changeIsShow" />
			<p v-show="isShow">もう偽りはしません。本当のことを言っています。そう、私はあなたが探している人です</p>
		</div>
		<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
		<スクリプト>
			var アプリ = 新しい Vue({
				el:"#アプリ",
				データ:{
					isShow:false
				},
				方法:{
					表示を変更する(){
						this.isShow = !this.isShow
					}
					
				}
			})
		</スクリプト>
	</本文>

2. 動詞-if

v-if命令の機能:式の真偽に応じて要素の表示状態を切り替える

v-if = "式"

本質はDOM要素を操作して表示を切り替えることです

式の値が true の場合、要素は DOM ツリー内に存在し、false の場合、要素は DOM ツリーから削除されます。

<本文>
		<div id="アプリ">
			<input type="button" value="クリックして表示を切り替える" @click="changeIsShow" />
			<p v-if="isShow">もう偽りはしません。本当のことを言っています。そう、私はあなたが探している人です</p>
		</div>
		<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
		<スクリプト>
			var アプリ = 新しい Vue({
				el:"#アプリ",
				データ:{
					isShow:false
				},
				方法:{
					表示を変更する(){
						this.isShow = !this.isShow
					}
				}
			})
		</スクリプト>
	</本文>

3. v-showとv-ifの違い

1. 原則的な違い

  • v-show ディレクティブ: 要素は常に HTML にレンダリングされます。これは、CSS スタイル属性を設定する単純な疑似要素です。条件を満たさない要素が style="display:none" に設定されている場合は、要素の CSS 属性 (display) を変更して表示または非表示を決定します。
  • v-ifディレクティブ:条件が満たされればHTMLにレンダリングされ、条件が満たされなければHTMLにレンダリングされず、DOM要素を操作して表示が切り替わる

2. 使用シナリオの違い

  • v-if は DOM 要素を操作する必要があり、切り替えコストが高くなります。
  • v-show は要素の CSS プロパティを変更するだけなので、初期のレンダリング コストが高くなります。
  • 非常に頻繁に切り替える必要がある場合は、v-show を使用することをお勧めします。実行時に条件がほとんど変化しない場合は、v-if を使用することをお勧めします。

要約する

よく使われるVue命令v-ifとv-showの違いについての記事はこれで終わりです。Vue命令v-ifとv-showの違いについてさらに詳しく知りたい方は、123WORDPRESS.COMの過去の記事を検索するか、以下の関連記事を引き続きご覧ください。今後とも123WORDPRESS.COMをよろしくお願いいたします。

以下もご興味があるかもしれません:
  • VUE における v-if と v-show の違いの紹介
  • Vue 条件付きレンダリング v-if と v-show
  • Vue で v-show と v-if を区別する方法
  • Vue における v-if と v-show の違いを簡単に理解する
  • Vue における v-if と v-show の違いの詳細な説明
  • Vue における v-show と v-if の相違点と類似点、および v-show の使用方法
  • Vue は v-if v-show ページのフラッシュ、div のフラッシュ ソリューションを使用します。
  • Vue の v-if/v-show/補間式によって発生する点滅の原因と解決策
  • Vueは箇条書きボックスマスクを実装し、他の領域をクリックして箇条書きボックスを閉じ、v-ifとv-showの違いを導入します。
  • vuejs の v-if と v-show の違いと v-show が動作しない問題について
  • Vue 学習ノートにおける v-if と v-show の違い
  • vue.js の v-if と v-show の詳細な理解
  • Vue.js で v-show と v-if を使用する際の注意点
  • Vue.js における v-show および v-if 命令の使用方法の紹介

<<:  HTML 背景画像と背景色_PowerNode Java アカデミー

>>:  Mac で MySQL 8.0.22 のパスワードを取得する方法

推薦する

Vue シングルページ アプリケーションで Markdown レンダリングを実装する

以前、Markdown をレンダリングするときに、mavonEditor のプレビュー モードを使用...

Web フロントエンドのパフォーマンス最適化の詳細説明: リソースのマージと圧縮

2つの目的のためのリソースの結合と圧縮httpリクエストの数を減らす要求されたリソースのサイズを縮小...

CSS3 の display:grid、グリッドレイアウトの紹介

1. グリッドレイアウト(グリッド): Web ページをグリッドに分割し、さまざまなグリッドを組み合...

Red Hat Enterprise Linux 8 をベースにした CentOS 8 が正式にリリースされました

CentOS プロジェクトは、Red Hat の再配布要件に完全に準拠した、Red Hat Ente...

js の parseInt() の奇妙な動作の調査と修正

背景: parseInt(0.006) または parseInt(0.0006) は 0 という値を...

MySQL における int の最大値の詳細な説明

導入2日前に見た問題について詳細に書きます。バイトコンピューターがバイナリに基づいていることは誰もが...

JSに関する7つの面接の質問、あなたはいくつ正しく答えられますか

序文JavaScript では、これは関数呼び出しコンテキストです。この動作が非常に複雑であるからこ...

フレックスレイアウトを使用してページレイアウトを簡単に実装するためのサンプルコード

では、早速コードを見てみましょう。 1. 上部、中央、下部のレイアウト: <!DOCTYPE ...

レアタグフィールドセットと凡例の使用方法の詳細な説明

<fieldset>と<legend>については、ほとんどの人はおそらく馴染...

Vueで親子コンポーネント通信を実装する方法

目次1. 親コンポーネントと子コンポーネントの関係2. 小道具3. $エミット4. $親V. 結論 ...

Vue の基本入門: Vuex のインストールと使用

目次1. vuexとは何か2. インストールと導入3. vuexの使用4. プロセスの紹介5. 突然...

Docker+keepalived+nginx を使用してマスタースレーブホットスタンバイを実装する方法の例

序文単一障害点を解決するには、マスター/スレーブ ホット スタンバイ ソリューションを構成する必要が...

WeChatミニプログラムでの仮想リストの実装例

目次序文分析する初期レンダリング方法初期最適化さらなる最適化方法2序文ほとんどのミニプログラムには、...

Vueのトグルボタンをクリックしてボタンを有効にし、無効にします。

実装方法は3つのステップに分かれています。テンプレートに 2 つのボタンを設定し、v-if と v-...