v-ifディレクティブを使用することで条件分岐処理を実行することが出来る。
ifの実装例
html
<div id="app">
<p v-if="true_data">This is True</p>
<p v-if="false_data">This is False</p>
</div>
js
var app = new Vue({
el: '#app',
data: {
true_data: true,
false_data: false,
}
})
出力結果
This is True
true_data が true の要素だけが描画され、false_data の方は DOM ごと生成されない。表示・非表示を CSS で切り替えるのではなく、条件が false の要素はそもそも作られないのが v-if の挙動である。
else if と else の実装
html
<div id="app">
<div v-if="false_data">
if
</div>
<div v-else-if="true_data">
else if
</div>
<div v-else>
else
</div>
</div>
出力結果
else if
v-else-if と v-else は、直前の要素が v-if / v-else-if であることが条件になる。間に別の要素を挟むと認識されない。また v-else には値を書かない。
templateによるグループ化
ifを付けた要素の子要素が複数ある場合は正しく評価されない。
以下、正しく評価されない実装例
<div v-if="true_data">
<p>aaa</p>
<p>bbb</p>
</div>
この書き方だと、条件分岐のためだけに <div> が実際の DOM に残ってしまう。レイアウト用の意味を持たない要素が増えると、CSS のセレクタや Flexbox / Grid の親子関係が崩れる原因になる。
正しく評価するにはtemplateタグを使用する必要がある。
<template v-if="true_data">
<p>aaa</p>
<p>bbb</p>
</template>
<template> は描画されない入れ物なので、条件を満たしたときに中身の <p> だけが出力される。複数要素をまとめて出し分けたいときは、常にこちらを使えばよい。
子ページ
子ページはありません
同階層のページ
- インストール(ファイルのダウンロード)
- npmを使用したプロジェクトの作成
- for 繰り返し処理
- ifの条件分岐とtemplateを用いたグループ化
- クリック時のイベント処理(on:click)
- modelとdata フォーム入力値とDOMへの即時反映
- computed(算出プロパティ)と使い方とdataとの違い
- ライフサイクルフック(created / mounted / updated / destroyedの使い方)
- $nextTickの使い方(ライフサイクルフック)
- メソッドの定義方法
- エラー一覧
- ルーティング設定
- aリンクの貼り方と動的URLの作成
- Mixinを利用した共通処理の記述方法
- v-bindによるデータ連携
- ヘッダー/フッターの共通コンポーネント
- ナビゲーションの現在ページをハイライトする方法
- 画面サイズの取得方法
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 3Dグラフィックスのソフト一覧|Blender・Metasequoiaと用途別の選び方
- 7 Spring Frameworkのアノテーション一覧
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- Visual Studio「デザイナーを表示できません」エラーの原因と対処 2026-10-28 12:06:00
- SSH 認証に失敗しました。再試行してください の対処 2026-10-28 12:06:00
- SSH2 秘密鍵の読み込みに失敗しました の原因と対処 2026-10-28 12:06:00
- TeraTerm のよくあるエラーと対処法完全ガイド — Connection refused / 2026-10-28 12:06:00
- Visual Studio エラー一覧|コンパイルエラー・警告の確認方法と対処 2026-10-28 11:39:57
- Whitelabel Error Page の原因と消し方|Spring Boot のエラーページ 2026-10-28 11:39:57
- Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法 2026-10-28 11:39:57
- SQL WHERE 句完全ガイド 2026-10-28 11:39:57
- SQL JOIN 完全ガイド (INNER/LEFT/RIGHT/FULL OUTER) 2026-10-28 11:39:57
- tomcat の起動 / 停止ログと catalina.log・catalina.out の違い 2026-10-28 10:24:23
- Tomcat の起動確認方法 5 つ|localhost:8080・ポート・プロセス・ログ 2026-10-28 10:24:23
- Oracle 19c COMMITの使い方: 暗黙コミット・自動確定・応答不明時の確認 2026-10-28 09:59:09
- Oracle 19c DELETE文|削除対象の確認・COMMIT前の判断・ROLLBACKの条件 2026-10-28 09:59:09
- Oracle 19c INSERT文|INSERT ALL・SELECT・RETURNINGとMERGEの使い分け 2026-10-28 09:59:09
- Oracle 19cのトランザクション制御|COMMIT・ROLLBACK・分離レベルと接続設定 2026-10-28 09:59:09