v-if和v-show的区别

2020-07-18  本文已影响0人  63537b720fdb

1.都是通过指令中的布尔值,决定是否展示对应的元素

        <div id="app">
            <h2 v-if="isShow" id="v-if">{{message}}</h2>
            <h2 v-show="isShow" id="v-show">{{message}}</h2>
        </div>
        <script src="js/vue.js" type="text/javascript" charset="utf-8"></script>
        <script type="text/javascript">
            const app = new Vue({
                el: '#app',
                data: {
                    message: 'hello',
                    isShow: true
                }
            })
        </script>
image.png
image.png

2.区别

v-if为false时,对应的h2标签不存在dom中


image.png

v-show为false时,对应的h2标签仍然存在在dom中,只是在行间添加了样式:dispaly:none,通过该样式控制h2标签是否显示到页面。


image.png

isShow为true时的dom结构


image.png

3.根据切换频率选择

在开发中选择v-if还v-show呢?
若该元素切换的频率高,则选择v-show,
若该元素切换的频率低,则选择v-if

上一篇 下一篇

猜你喜欢

热点阅读