v-else-if 条件分岐(else if)

最終更新:2026-10-22

v-else-if 条件分岐(else if)

v-else-if は複数の条件分岐をつなぎ、真になる条件が見つかるまで順に評価します。

グループディレクティブ
種類ディレクティブ
スコープテンプレート
Vue バージョン3.0+
SSR 対応対応

📝 構文

<p v-if="t >= 90">優秀</p>
<p v-else-if="t >= 60">合格</p>
<p v-else>不合格</p>

⚙️ 引数

expression真偽値を返す式。記述順に短絡評価されます

戻り値:ディレクティブ。戻り値なし

▶ 例

以下のコードを編集して結果を確認しましょう:

出力:

Enter 75 for 'Pass', 95 for 'Excellent', 40 for 'Fail'.

💡 ポイント

ℹ️ 補足 条件は記述順に評価され、最初に一致した時点で止まります。最も厳しい条件を先頭に並べてください。
⚠️ 注意 こちらも v-if / v-else-if の直後に置く必要があり、チェーンを他の要素で中断できません。
💡 ヒント 分岐が 3 つを超える場合は、算出プロパティでステータスを返す方を検討してください。テンプレートがすっきりします。
関連ケースは近日公開予定。

📚 関連チュートリアル

❓ よくある質問

Q v-else-if の評価順序は重要ですか?
A 重要です。上から下へ短絡評価され、一致した時点で止まるため、最も厳しい条件を先頭に置きます。
Q 分岐が多いとテンプレートが散らかりますか?
A 3 つを超えるなら、ステータスを算出プロパティにまとめ、テンプレートではその値だけを判断します。
Q v-else-if は v-show と混在できますか?
A できません。分岐チェーンは v-if 系のディレクティブ間でのみペアリングされます。
Web-Tutorial.com

Web-Tutorial 技術チーム

複数の開発者によって共同維持されているプログラミングチュートリアルプラットフォーム。各チュートリアルは専門分野の開発者が執筆・レビューしています。正確で信頼性の高いコンテンツを目指しています — 問題を見つけた場合はお知らせください。

100%