美文网首页
vue中v-show 和 v-if 的区别:

vue中v-show 和 v-if 的区别:

作者: lucky_yao | 来源:发表于2020-10-11 18:26 被阅读0次
         v-show : 显示和隐藏
    
          v-if :  创建和销毁
    

    相同点:v-show和v-if都能控制元素的显示和隐藏。

    不同点:v-if只有在判断为true的时候才会对数据进行渲染,false的时候把包含的代码进行删除。除非再次进行数据渲染,v-if才会重新判断。可以说是用法比较倾向于对数据一次操作。v-show是无论判断是什么都会先对数据进行渲染,只是false的时候对节点进行display:none;的操作。所以再不重新渲染数据的情况下,改变数据的值可以使数据展示或隐藏。

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8">
            <title></title>
            <script src="js/vue.min.js"></script>
        </head>
        <body>
            <div id="app">
                <h3> v-show 显示隐藏 通过display</h3>
                <p v-show="a=='apple'">fff</p>
                <h3> v-if 显示隐藏 通过有无 这个标签</h3>
                <p v-if="a=='apple'">显示隐藏</p>
                <h3> v-if  v-else-if v-else 做判断</h3>
                <div v-if="num>=90">
                    优秀
                </div>
                <div v-else-if="num>=60">
                    良好
                </div>
                <div v-else>
                    不及格
                </div>
                
                <input type="text" v-model="msg"/>
                {{msg}}
                
                <h3> v-once 只展示一次 不会跟着变化而变化</h3>
                <p v-once>{{msg}}</p>
            </div>
            
        </body>
        <script type="text/javascript">
            new Vue({
                el: '#app',
                data: {
                    msg: '111',
                    h1styleobj: {
                        'color': 'red',
                        'background-color': 'pink'
                    },
                    h1styleobj1: {
                        'font-size': '50px'
                    },
                    tr:true,
                    f:false,
                    a:'apple',
                    num:'60'
                }
            })
            
        </script>
    </html>
    

    相关文章

      网友评论

          本文标题:vue中v-show 和 v-if 的区别:

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