Vue 2.x – 内置指令

v-text

1.作用:向其所在的节点中渲染文本内容。
2.与插值语法的区别:v-text会替换掉节点中的内容,{{xx}}则不会。

<div id="root">
    <div>你好,{{name}}</div>
    <div v-text="name"></div>
    <div v-text="str"></div>
</div>

v-html

1.作用:向指定节点中渲染包含html结构的内容。
2.与插值语法的区别:

  • v-html会替换掉节点中所有的内容,{{xx}}则不会。
  • v-html可以识别html结构。
    3.严重注意:v-html有安全性问题!!!!
  • 在网站上动态渲染任意HTML是非常危险的,容易导致XSS攻击。
  • 一定要在可信的内容上使用v-html,永不要用在用户提交的内容上!

v-cloak

1.本质是一个特殊属性,Vue实例创建完毕并接管容器后,会删掉v-cloak属性。
2.使用css配合v-cloak可以解决网速慢时页面展示出{{xxx}}的问题。

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8" />
        <title>v-cloak指令</title>
        <style>
            [v-cloak]{
                display:none;
            }
        </style>
    </head>
    <body>
        <!-- 准备好一个容器-->
        <div id="root">
            <h2 v-cloak>{{name}}</h2>
        </div>
        <!-- 这里js加载会发生阻塞-->
        <script type="text/javascript" src="http://localhost:8080/resource/5s/vue.js"></script>
    </body>

    <script type="text/javascript">
        console.log(1)
        new Vue({
            el:'#root',
            data:{
                name:'你好'
            }
        })
    </script>
</html>

v-once

1.v-once所在节点在初次动态渲染后,就视为静态内容了。
2.以后数据的改变不会引起v-once所在结构的更新,可以用于优化性能。

v-pre

1.跳过其所在节点的编译过程。
2.可利用它跳过:没有使用指令语法、没有使用插值语法的节点,会加快编译。

转载请注明出处,谢谢!
THE END
分享
二维码
打赏
< <上一篇
下一篇>>