6.常用指令(上)v-cloak,v-once,v-pre

v-cloak

v-cloak指令的作用是vue示例渲染后关联结束

双大括号插值语法在遇到网络延迟的时候会显示编译前的文本

<body>
    <div id="app">
        <p>{{a}}</p>
    </div>
    <script src="vue.js"></script>
    <script>
        var vue=new Vue({
            el:"#app",
            data:{
                a:"我是渲染的指令 v-cloak"
            },
        })
    </script>
</body>

在此,我们可以使用v-cloak结合CSS解决双大括号渲染的难题

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        [v-cloak]{
            display: none;
        }
    </style>
</head>
<body>
    <div id="app">
        <p v-cloak>{{a}}</p>
    </div>
    <script src="vue.js"></script>
    <script>
        var vue=new Vue({
            el:"#app",
            data:{
                a:"我是渲染的指令 v-cloak"
            },
        })
    </script>
</body>

[v-cloak]css选择器选择的是html结构中有v-cloak的属性,有这个属性的元素设置display为none,由于v-cloak这个属性在vue的实例加载完之后关联结果,所以就需要这个元素的隐藏状态,这样造成的结果就是,要么空白,要么显示编译后的文本。

v-once

v-once的作用是只会渲染对应元素一次,数据更新不会引起视图的更新,目的是为了优化页面。

<body>
    <div id="app">
       <h2 v-once>{{a}}</h2>
       <button @click="add">点我加一</button>
       <button @click="minus">点我减一</button>
    </div>
    <script src="vue.js"></script>
    <script>
        var vue=new Vue({
            el:"#app",
            data:{
                a:100
            },
            methods:{
                add(){
                    this.a++
                    console.log(this.a)
                },
                minus(){
                    this.a--
                    console.log(this.a)
                }
            }
        })
    </script>
</body>

在这里插入图片描述使用场景通常是没有动态的元素内容,比如一些文章,一些固定标题

v-pre

v-pre属性的作用: 跳过该元素的编译过程,直接显示元素内部的文本,功能就是跳过大量的没有指令的节点。

<h2 v-pre>{{a}}</h2>

在这里插入图片描述
浏览器显示的就是没有编译之前的h2元素中的文本内容,v-pre属性的优点就是优化页面的加载性能

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值