码迷,mamicode.com
首页 > 其他好文 > 详细

Vue08 -- 内置指令

时间:2019-06-29 12:34:04      阅读:86      评论:0      收藏:0      [点我收藏+]

标签:ack   pack   sage   pre   new   网速慢   imp   display   需要   

v-cloak

描述:v-cloak不需要表达式,在Vue实例结束编译时从绑定的html元素中移除,通常和css的display:none;配合使用。当网速慢时,Vue没有加载出来时会出现“{{xxx}}”的字样,直到vue创建完实例,DOM才会被替换,所以屏幕会出现闪烁,还需要在css代码中加上:[v-cloak]:{display: none!important;} 联合使用即可,但在工程化的项目中使用webpack和vue-router时,项目的vue结构只有一个空的div,剩余的内容都是由路由去挂载完成的,所以不在需要使用,v-cloak只适用于简单的项目中

<!DOCTYPE html>
<html>
<head>
    <title>Vue --- 内置指令</title>
    <script type="text/javascript" src="https://unpkg.com/vue/dist/vue.min.js"></script>
    <style type="text/css">
        [v-cloak]:{
            display: none!important;
        }
    </style>
</head>
<body>
    <div id="app" v-cloak>
        {{message}}
    </div>
    <script type="text/javascript">
        var app = new Vue({
            el:#app,
            data:{
                message:这是一段话
            }
        })
    </script>
</body>
</html>

 v-once

描述:不需要表达式的指令,作用是定义它的元素或组件只渲染一次,包括元素或组件的所有子节点。首次渲染后,不再随数据的变化重新渲染,将被视为静态内容,改变message不会因为改变而使页面数据发生变动。

<!DOCTYPE html>
<html>
<head>
    <title>Vue --- 内置指令</title>
    <script type="text/javascript" src="https://unpkg.com/vue/dist/vue.min.js"></script>
</head>
<body>
    <div id="app" >
        <span v-once>{{message}}</span>
        <div v-once>
            <span>{{message}}</span>
        </div>
    </div>
    <script type="text/javascript">
        var app = new Vue({
            el:#app,
            data:{
                message:这是一段话
            }
        })
    </script>
</body>
</html>

 

Vue08 -- 内置指令

标签:ack   pack   sage   pre   new   网速慢   imp   display   需要   

原文地址:https://www.cnblogs.com/lee-xingxing/p/11103938.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!