Vue条件判断:v-if、v-else、v-else-if、v-show 指令

news2024/12/31 4:18:30

在程序设计中,条件判断是必不可少的技术。在视图中,经常需要通过条件判断来控制 DOM 的显示状态。Vue.js 提供了相应的指令用于实现条件判断,包括:v-if、v-else、v-else-if、v-show 指令。

1、v-if 指令

v-if 指令可以根据表达式的值来判断是否输出 DOM 元素及其包含的子元素。如果表达式的值为 true,就输出 DOM 元素及其包含的子元素;否则,就将 DOM 元素及其包含的子元素移除。

【实例】使用 v-if 指令,判断是否显示 DOM 元素。

<body>
    <div id="app">
        <h3>{{title}}</h3>
        <p>Tom 的年龄是{{age}}</p>
        <p v-if="age < 18">Tom 未成年</p>

        <template v-if="show">
            <p>博客信息:{{blogName}}</p>
            <p>博客地址:{{blogUrl}}</p>
        </template>
    </div>
</body>

<!-- 引入 Vue 框架 -->
<script src="../js/vue.global.js"></script>

<script type="text/javascript">
    // 使用 Vue.createApp 函数创建一个应用程序实例
    const vueApp = Vue.createApp({
        //数据
        data() {
            return {
                title: "使用 v-if 指令",
                age: 16,
                show: true,
                blogName: "您好,欢迎访问 pan_junbiao的博客",
                blogUrl: "https://blog.csdn.net/pan_junbiao"
            }
        }
        //使用 mount() 方法,装载应用程序实例的根组件
    }).mount('#app'); 
</script>

执行结果:

2、v-else 和 v-else-if 指令

v-else 指令的作用相当于 JavaScript 中的 else 语句部分的作用。可以将 v-else 指令配合 v-if 指令一起使用。

v-else-if 指令的作用相当于 JavaScript 中的 else if 语句部分的作用。应用该指令可以进行更多的条件判断,不同的条件对应不同的输出结果。

【实例】使用 v-if、v-else、v-else-if 指令,判断当前月份属于哪个季节。

<body>
    <div id="app">
        <h3>{{title}}</h3>
        <p>当前月份是 {{month}} 月</p>

        <div v-if="month >= 1 && month <= 3">
            当前月份属于:春季
        </div>
        <div v-else-if="month >= 4 && month <= 6">
            当前月份属于:夏季
        </div>
        <div v-else-if="month >= 7 && month <= 9">
            当前月份属于:秋季
        </div>
        <div v-else>
            当前月份属于:冬季
        </div>
    </div>
</body>

<!-- 引入 Vue 框架 -->
<script src="../js/vue.global.js"></script>

<script type="text/javascript">
    // 使用 Vue.createApp 函数创建一个应用程序实例
    const vueApp = Vue.createApp({
        //数据
        data() {
            return {
                title: "使用 v-if、v-else、v-else-if 指令",
                month: new Date().getMonth() + 1
            }
        }
        //使用 mount() 方法,装载应用程序实例的根组件
    }).mount('#app'); 
</script>

执行结果:

3、v-show 指令

v-show 指令是根据表达式的值来判断是显示还是隐藏 DOM 元素。当表达式的值为 true 时,元素将被显示;当表达式的值为 false 时,元素将被隐藏,此时为元素添加了一个内联样式:style="display: none"。与 v-if 指令不同,对于使用 v-if 指令的元素,无论表达式的值为 true 还是 false,该元素始终会被渲染并保留在 DOM 中。绑定值的改变只是简单地切换元素的 CSS 属性 display。

注意:

v-show 指令不支持<template>元素,也不支持 v-else 指令。

【实例】使用 v-show 指令,切换内容的显示和隐藏。

<body>
    <div id="app">
        <input type="button" :value="bText" v-on:click="toggle" />
        <div v-show="isShow">
            <p>博客信息:{{blogName}}</p>
            <p>博客地址:{{blogUrl}}</p>
        </div>
    </div>
</body>

<!-- 引入 Vue 框架 -->
<script src="../js/vue.global.js"></script>

<script type="text/javascript">
    // 使用 Vue.createApp 函数创建一个应用程序实例
    const vueApp = Vue.createApp({
        //数据
        data() {
            return {
                isShow: true,
                bText: "隐藏内容",
                blogName: "您好,欢迎访问 pan_junbiao的博客",
                blogUrl: "https://blog.csdn.net/pan_junbiao"
            }
        },
        //方法
        methods : {
            toggle : function(){
                //切换按钮文字
				this.bText == '隐藏内容' ? this.bText = '显示内容' : this.bText = '隐藏内容';
				this.isShow = !this.isShow;//修改属性值
            }
        }
        //使用 mount() 方法,装载应用程序实例的根组件
    }).mount('#app'); 
</script>

执行结果:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2061666.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

机器学习 之 线性回归算法

目录 线性回归&#xff1a;理解与应用 什么是线性回归&#xff1f; 一元线性回归 正态分布的重要性 多元线性回归 实例讲解 数据准备 数据分析 构建模型 训练模型 验证模型 应用模型 代码实现 线性回归&#xff1a;理解与应用 线性回归是一种广泛使用的统计方法&…

企业高性能web服务器,原理及实例

一、Web 服务基础介绍 正常情况下的单次web服务访问流程&#xff1a; 1.1 Web 服务介绍 1993年3月2日&#xff0c;中国科学院高能物理研究所租用AT&T公司的国际卫星信道建立的接入美国SLAC国家实 验室的64K专线正式开通&#xff0c;成为我国连入Internet的第一根专线。 1…

Mycat分片-垂直拆分

目录 场景 配置 测试 全局表配置 续接上篇&#xff1a;MySQ分库分表与MyCat安装配置-CSDN博客 续接下篇&#xff1a;Mycat分片-水平拆分-CSDN博客 场景 在业务系统中, 涉及以下表结构 ,但是由于用户与订单每天都会产生大量的数据, 单台服务器的数据 存储及处理能力是有限…

0x01 GlassFish 任意文件读取漏洞复现

参考文章&#xff1a; 应用服务器glassfish任意文件读取漏洞 - SecPulse.COM | 安全脉搏 fofa 搜索使用该服务器的网站 网络空间测绘&#xff0c;网络空间安全搜索引擎&#xff0c;网络空间搜索引擎&#xff0c;安全态势感知 - FOFA网络空间测绘系统 "glassfish"&…

VUE3-nest前后端部署教程-----4.服务器linux中部署Node.js环境

一.安装分布式版本管理系统Git (Alibaba Cloud Linux 3/2、CentOS 7.x) sudo yum install git -y 二.使用Git将NVM的源码克隆到本地的~/.nvm目录下&#xff0c;并检查最新版本。 git clone https://gitee.com/mirrors/nvm.git ~/.nvm && cd ~/.nvm && gi…

仿Muduo库实现高并发服务器——Server.hpp框架的简单描述

EventLoop模块在本项目中的简单使用&#xff1a; 下面这张图 是channel模块&#xff0c;poller模块&#xff0c;TimerWheel模块&#xff0c;EventLoop模块&#xff0c;LoopThreadPool模块进行组合。便于大家对这个项目的理解&#xff0c;因为代码看起来挺复杂的。 下面这个图&…

2024河南萌新联赛第六场题解

这场的出题组是郑州大学acm实验室&#xff0c;验题组是郑州大学和郑州轻工业大学的志愿者同学们。 官方题解大部分内容是我写的&#xff0c;B题思路部分是对应的出题人自己写的&#xff0c;E题思路以及代码都是对应的出题人写的因为我不会写这个题&#xff0c;题目的题面&…

C++--类和对象(三)

本篇主要是填补前两篇类和对象中的小知识点 第一篇:C--类和对象&#xff08;一&#xff09;-CSDN博客 第二篇:C--类和对象&#xff08;二&#xff09;-CSDN博客 目录 1.初始化列表 2.友元&#xff08;friend&#xff09; 3.内部类 1.初始化列表 在之前实现构造函数的时候&a…

uniapp 总结

uniapp的 发送请求的 responseType是没有 blob这个类型的&#xff0c; responseType: ‘arraybuffer’, uniapp 标准js和浏览器js的区别 downloadFile的原理作用

从零开始学习SLAM(五):极几何与极约束

文章参考计算机视觉life 前备知识 概念 几何关系&#xff1a; 上图中&#xff1a; 极平面&#xff08;Epipolar plane&#xff09;&#xff1a;点c0, c1, p三点确定的平面&#xff1b; 极点&#xff08;Epipoles&#xff09;&#xff1a; c0 c1 连线与两个平面的交点 基线&a…

SAP Parallel Accounting(平行分类账业务)配置及操作手册【适用于多国家会计准则】

1. 配置准备 1.1 理解平行账概念 平行账&#xff0c;也称为多分类账&#xff0c;是SAP系统中的一项功能&#xff0c;它允许企业按照不同的会计准则来维护各自的财务数据。这种设置特别适用于那些需要符合多种会计准则的跨国公司。通过平行账&#xff0c;企业可以在不同的分类…

单片机存储芯片 W25QXX、AT24C02

一、FLASH W25QXX (1) W25QXX芯片简介 W25Q128是华邦公司推出的一款SPI接口的NOR Flash芯片&#xff0c;其存储空间为128Mbit&#xff0c;相当于16M字节。W25Q128V芯片是串行闪存&#xff0c;可以通过标准/两线/四线SPI控制。W25Q128一次最多可编程256个字节。页面可以按扇区擦…

特斯拉算法,暴力递归尝试,汉诺塔问题

改进之后的算法 暴力递归就是尝试 汉诺塔问题 主函数 打印一个字符串的全部子序列&#xff0c;包括空字符串

【数据结构题集(c语言版)】内部排序算法比较 题解(起泡排序+直接插入排序+简单选择排序+快速排序+希尔排序+堆排序)

内部排序算法比较 问题描述 在教科书中,各种内部排序算法的时间复杂度分析结果只给出了算法执行时间的阶或大概执行时间。试通过随机数据比较各算法的关键字比较次数和关键字移动次数,以取得直观感受。 基本要求 对以下6种常用的内部排序算法进行比较:起泡排序、直接插入排…

SpringBoot依赖之Spring Data Redis 实现地理坐标(Geospatial)

Spring Boot 项目中使用 Spring Data Redis 实现地理坐标(Geospatial) 概念 Spring Data Redis (AccessDriver) 依赖名称: Spring Data Redis (AccessDriver)功能描述: Advanced and thread-safe Java Redis client for synchronous, asynchronous, and reactive usage. Sup…

JVM 有哪些垃圾回收器?

JVM 有哪些垃圾回收器&#xff1f; 图中展示了7种作用于不同分代的收集器&#xff0c;如果两个收集器之间存在连线&#xff0c;则说明它们可以搭配使用。虚拟机所处的区域则表示它是属于新生代还是老年代收集器。 新生代收集器&#xff08;全部的都是复制算法&#xff09;&…

使用 Charles 模拟手机弱网测试

在移动互联网时代&#xff0c;网络状况的不确定性给应用程序带来了挑战。尤其是在偏远地区或信号不佳的地方&#xff0c;用户的网络连接可能会变得不稳定。因此&#xff0c;对应用程序进行弱网测试变得尤为重要。Charles Proxy 是一款广泛使用的网络调试工具&#xff0c;它不仅…

分享小诗梦404炫酷单页面html5源码

源码介绍 分享小诗梦404炫酷单页面html5源码&#xff0c;小诗梦的一个很炫酷页面&#xff0c;感觉应该符合一些人的感觉&#xff01;可以用来做404页面。 源码下载 分享小诗梦404炫酷单页面html5源码

C++ | Leetcode C++题解之第363题矩形区域不超过K的最大数值和

题目&#xff1a; 题解&#xff1a; class Solution { public:int maxSumSubmatrix(vector<vector<int>> &matrix, int k) {int ans INT_MIN;int m matrix.size(), n matrix[0].size();for (int i 0; i < m; i) { // 枚举上边界vector<int> sum(…

SAP凭证分割【Document Splitting】

在SAP系统中&#xff0c;凭证分割&#xff08;Document Splitting&#xff09;是一种用于在财务会计模块中特别是总帐会计中进行更细粒度的财务报表分析的技术。通过凭证分割&#xff0c;可以按照不同的标准&#xff08;如成本中心、利润中心、公司代码等&#xff09;对会计凭证…