1. 常用内置指令
v-text
: 更新元素的 textContent
v-html
: 更新元素的 innerHTML
v-if
: 如果为true, 当前标签才会输出到页面
v-else
: 如果为false, 当前标签才会输出到页面
v-show
: 通过控制display样式来控制显示/隐藏
v-for
: 遍历数组/对象
v-on
: 绑定事件监听, 一般简写为@
v-bind
: 强制绑定解析表达式, 可以省略v-bind
v-model
: 双向数据绑定
v-text
: 更新元素的 textContent
- 作用:向其所在的节点中渲染文本内容。
- 与插值语法的区别:v-text会替换掉节点中的内容,{
{xx}}则不会。
- 作用:向指定节点中渲染包含html结构的内容。
- 与插值语法的区别:
(1). v-html会替换掉节点中所有的内容,{
{xx}}则不会。
(2). v-html可以识别html结构。
- 严重注意:v-html有安全性问题!!!!
(1). 在网站上动态渲染任意HTML是非常危险的,容易导致XSS攻击。
(2). 一定要在可信的内容上使用v-html,永不要用在用户提交的内容上!
- v-once所在节点在初次动态渲染后,就视为静态内容了。
- 以后数据的改变不会引起v-once所在结构的更新,可以用于优化性能。
- 跳过其所在节点的编译过程。
- 可利用它跳过:没有使用指令语法、没有使用插值语法的节点,会加快编译。
-
ref
: 为某个元素注册一个唯一标识, vue对象通过$refs属性访问这个元素对象
-
v-cloak
: 使用它防止闪现表达式, 与css配合: [v-cloak] { display: none }
- 本质是一个特殊属性,Vue实例创建完毕并接管容器后,会删掉v-cloak属性。
- 使用css配合v-cloak可以解决网速慢时页面展示出{
{xxx}}的问题。
[v-clock] {
display: none;
}
<body>
<div id="demo">
<p ref="content">baidu.com</p>
<button @click="hint">提示</button>
<p v-cloak>{
{msg}}</p>
</div>
<script src="../js/vue.js"></script