美文网首页
Vue中的v-if指令

Vue中的v-if指令

作者: 考拉_2044 | 来源:发表于2018-12-05 20:04 被阅读0次

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <meta http-equiv="X-UA-Compatible" content="ie=edge">

    <title>Document</title>

    <style>

            ul{

                overflow: hidden;

            }

            li {

                list-style: none;

                width: 100px;

                height: 50px;

                line-height: 50px;

                border: 1px solid #000;

                float: left;

            }

            li.active {

                color: red;

                border-color: red;

            }

            .box{

                border: 1px solid #000;

                display: flex;

            }

            .box p{

                flex: 1;

                color: red;

            }

    </style>

</head>

<body>

    <div id="app">

        <ul>

            <li v-for=" (item,index) in tabs"

            :key="item.id"

            :class="{ 'active': curTab===item.id }"

            @click="curTab=item.id">

            {{ item.name }}

            </li> 

        </ul>

        <!-- v-if 条件为true当前元素才会显示,条件为false不会显示 -->

        <!-- 简单的选项卡 -->

        <div class="home"  v-if="curTab==='home'">首页</div>

        <div class="list"  v-if="curTab==='list'">列表</div>

        <div class="about" v-if="curTab==='about'">关于</div>

        <!-- ================================================== -->

        <div>

          用户名: {{ user.name }}

          年龄:  {{ user.age }}

            <!-- 这个意思是如果user.ishun为true那么久显示拉黑按钮

                如果显示为false显示点击获取手机号按钮

                v-if v-else

            -->

          <button v-if="!user.isHun">未婚,点击获取手机号</button>

          <button v-else>已婚,拉黑</button>

        </div>

        <!-- ================================================== -->

        <!-- 根据分数选择优秀,良好,及格 -->

        <!--  v-if v-else-if v-else -->

        <p v-if="score > 90">优秀</p>

        <p v-else-if="score > 80">良好</p>

        <p v-else-if="score > 60" >及格</p>

        <p v-else>差</p>

        <!-- ================================================== -->

        <!-- 控制三个p标签显示-->

        <!-- 可以用一个父元素包括起来这样用父元素来管理3个标签

            但是这种方法添加多了一个元素标签有可能会影响到页面布局

            打乱样式

            如何解决:

                (1)改样式

                (2)将外层改为template

        -->

        <div class="box" >

                <div v-if="isP">

                        <p>p1</p>

                        <p>p2</p>

                        <p>p3</p>

                </div>

        </div>

        <!-- 该样式 -->

        <div class="box" v-if="isP">

                <p>改样式</p>

                <p>p1</p>

                <p>p2</p>

                <p>p3</p>

        </div>

        <!-- 外层套用template -->

        <div class="box" >

                <template v-if="isP">

                        <p>外层套用template</p>

                        <p>p1</p>

                        <p>p2</p>

                        <p>p3</p>

                </template>

        </div>

    </div>

</body>

</html>

<script src="/js/vue.js"></script>

<script>

    var vm = new Vue({

        el: '#app',

        data: {

            active: 'active',

            // 数据变量

            curTab: 'home', //home ||list

            user:{

                name:'张三',

                age:18,

                isHun:false

            },

            score:80,

            isP:true,//控制是否显示3个p标签

            //数量太多了可以写一个数组

            tabs: [{

                    'id': 'home',

                    name: '首页'

                },

                {

                    'id': 'list',

                    name: '列表页'

                },

                {

                    'id': 'about',

                    name: '关于'

                }

            ]

        }

    })

</script>

相关文章

  • Vue 条件渲染

    v-if 指令的使用 在Vue中,v-if 指令可以用于条件性地渲染一块内容,这块内容只会在指令的表达式返回 tr...

  • vue.js--条件语句&循环语句

    Vue.js条件与循环 条件判断 v-if指令 条件判断使用v-if指令 在这个例子里,v-if 指令根据表达式 ...

  • Vue.js 条件笔记

    Vue.js 条件判断使用 v-if 指令,v-if 指令将根据表达式 seen 的值(true 或 false ...

  • vue.js的v-if,v-on以及methods

    vue.js的v-if,v-on以及methods 解释: v-if:vue的if判断,条件渲染指令;等号后边为条...

  • vue内置指令

    vue指令 v-if v-if指令可以完全根据表达式的值在DOM中生成或者移除一个元素。v-if是惰性的,如果初始...

  • Vue中的v-if指令

    Document ul{ ove...

  • 【Vue】常用指令之v-if

    ?【Vue】学习养成记,【程序员必备小知识】 ? 今日小知识——Vue常用指令之v-if条件判断 1. v-if指...

  • Vue 指令的自定义

    我们可能需要先知道的 Vue 中自带默认指令(v-if 和 v-show 等),我们在使用 Vue 框架的时候,这...

  • vue的基础教程转载

    Vue v-if指令 Vue.js的指令是以v-开头的,它们作用于HTML元素,指令提供了一些特殊的特性,将...

  • 说说如何利用 Render 函数来实现 Vue.js 的内置指令

    因为在 Render 函数中无法使用 Vue 内置指令,比如 v-if 等,但我们可以在 Render 函数中,利...

网友评论

      本文标题:Vue中的v-if指令

      本文链接:https://www.haomeiwen.com/subject/pbzwcqtx.html