温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

v-once v-pre v-cloak作用

发布时间:2020-08-05 12:31:18 来源:网络 阅读:204 作者:喝醉的熊 栏目:web开发

这三个指令都是用来优化性能体验的:一个是搞一次不搞了 ,一个是干脆不搞 ,另一个是块遮羞布

v-once
当你只希望元素加载一次后面不再改变的时候,这个时候可以在根元素上添加这个指令。确保这些内容不会跟着数据改变而改变,只在初次页面加载时候计算一次然后缓存起来,v-once后面不用跟表达式

<div id="app">
        <img v-once :src="url" >
         <button @click="change">换图片</button>
    </div>
    <script type="text/javascript">
            const app = new Vue({
            el:"#app",
            data:{
                url:"https://cache.yisu.com/upload/information/20200302/54/8699.jpg"
            },
            methods:{
                change(){
                    this.url = "https://cache.yisu.com/upload/information/20200302/54/8700.jpg"
                }
            }
        })
    </script>

v-pre
一些静态的内容不需要编译加上这个指令可以加快编译,程序执行的时候就会跳过这个元素和它的子元素的编译过程。v-pre后面也不用跟表达式

 <h2 v-pre>哈哈哈哈哈哈哈</h2>

v-cloak
这个其实是用在网络比较差 程序执行慢或卡的时候,浏览器可能会显示出如下页面

<div id="app">
    <div>
            <h2>{{count}}</h2>
            <h2>{{count}}</h2>
            <h2>{{count}}</h2>
            <h2>{{count}}</h2>
            <h2>{{count}}</h2>
            </div>
        </div>

此时,模板还未挂载到页面上,真实数据还没显示出来,看起来比较丑,那怎么办 ,要不就找一个斗篷先遮住吧,等到模板挂载上去数据正常显示了,再把斗篷扔了。v-cloak后面也不用跟表达式

cloak 英[kləʊk] 美[kloʊk]
n. (尤指旧时的) 披风,斗篷; 遮盖物;

  <style type="text/css">
        [v-cloak]{
            display: none;
        }
       </style>
    </head>
    <body>
        <div id="app">
            <div v-cloak>
                <h2>{{count}}</h2>
                <h2>{{count}}</h2>
                <h2>{{count}}</h2>
                <h2>{{count}}</h2>
                <h2>{{count}}</h2>
            </div>
        </div>
        <script type="text/javascript">
            setTimeout(function(){
                const app = new Vue({
                    el: "#app",
                    data: {
                        count: "1111"
                    },
                    methods: {

                    }
                })
            },3000)

        </script>
    </body>
向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI