Vue模版语法之条件渲染

1. v-show

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>一个简单的按钮是否可以点击案例</title>
    <script type="text/javascript" src="./vue.global.js"></script>
</head>
<body>
    <div id="root">
        <!--使用v-show进行显示隐藏控件,true-->
        <div v-show="isTrue">显示标签</div>
        <!--使用v-show进行显示隐藏控件,''-->
        <div v-show="isNull">标签被隐藏</div>
        <!--使用v-show进行显示隐藏控件,false-->
        <div v-show="isFalse">标签被隐藏</div>
    </div>
</body>
</html>
<script type="text/javascript">
    const { createApp } = Vue
    createApp({
        data() {
            return {
                isTrue:true,
                isNull:'',
                isFalse:false,
            }
        },
    }).mount('#root')
</script>

2. v-if

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>一个简单的按钮是否可以点击案例</title>
    <script type="text/javascript" src="./vue.global.js"></script>
</head>
<body>
    <div id="root">
        <!--使用v-show进行显示隐藏控件,true-->
        <div v-if="isIf">隐藏标签</div>
        <div v-else-if="isElseIf">显示标签</div>
        <div v-else="isElse">隐藏标签</div>
    </div>
</body>
</html>
<script type="text/javascript">
    const { createApp } = Vue
    createApp({
        data() {
            return {
                isIf:'',
                isElseIf:true,
                isElse:false,
            }
        },
    }).mount('#root')
</script>


3.注意点

1.当 v-if 和 v-for 同时存在于一个元素上的时候,v-if 会首先被执行。

2.v-if 有更高的切换开销,而 v-show 有更高的初始渲染开销。因此,如果需要频繁切换,则使用 v-show 较好;如果在运行时绑定条件很少改变,则 v-if 会更合适。

3.因为 v-if 是一个指令,我们可以在一个 元素上使用 v-if

4.一个 v-else 元素必须跟在一个 v-if 或者 v-else-if 元素后面,否则它将不会被识别。

5.v-show 不支持在 元素上使用,也不能和 v-else 搭配使用。

相关推荐
林晓lx21 分钟前
使用Git钩子+ husky + lint语法检查提高前端项目代码质量
前端·git·gitlab·源代码管理
王同学要变强1 小时前
【深入学习Vue丨第二篇】构建动态Web应用的基础
前端·vue.js·学习
社恐的下水道蟑螂1 小时前
从字符串到像素:深度解析 HTML/CSS/JS 的页面渲染全过程
javascript·css·html
程序定小飞1 小时前
基于springboot的web的音乐网站开发与设计
java·前端·数据库·vue.js·spring boot·后端·spring
Hello_WOAIAI1 小时前
2.4 python装饰器在 Web 框架和测试中的实战应用
开发语言·前端·python
FinClip1 小时前
凡泰极客亮相香港金融科技周,AI助力全球企业构建超级应用
前端
武昌库里写JAVA1 小时前
element-ui 2.x 及 vxe-table 2.x 使用 css 定制主题
java·vue.js·spring boot·sql·学习
阿四1 小时前
【Nextjs】为什么server action中在try/catch内写redirect操作会跳转失败?
前端·next.js
申阳2 小时前
Day 6:04. 基于Nuxt开发博客项目-LOGO生成以及ICON图标引入
前端·后端·程序员
中国lanwp2 小时前
npm中@your-company:registry 和 registry 的区别
前端·npm·node.js