v-model(数据绑定)
v-model常用于表单数据的双向绑定,它本质上是一个语法糖。它主要的有两种应用:
for(循环)
格式: v-for=“字段名 in(of) 数组 or json
v-show 和 v-if(显示与隐藏)、v-else-if、v-else
v-show
通过值来判断是否加载并显示;
v-if
通过值来判断是否加载;
v-else-if
,充当 v-if 的“else-if 块”,可以连续使用;
v-else
,表示 v-if 的“else 块” ,必须连用,否则无效不会识别。
v-show
和 v-if两者区别在于:
- v-if 控制元素隐藏的时候,它会删除dom节点,而v-show并不会,v-if还可以和v-else-if 和 v-else,这两者是必须和v-if连用,不能单独使用。
- 一般来说, v-if 有更高的切换开销,而 v-show 有更高的初始渲染开销。
如果需要非常频繁地切换,则使用 v-show 较好;如果在运行时条件不太可能改变,则使用 v-if 较好。
v-show:
我只是用来控制 display 的属性值
v-if:
v-else-if:
程序员
设计师
运营者
互联网工作人
v-else:
侠课岛
还是侠课岛
v-bind(动态绑定)
及时对页面的数据进行更新修改。
- v-bind:id 简写为 :id
- v-bind:disabled 简写为 :disabled
- v-bind:href 简写为 :href
- v-on:click 简写为 @click
v-on(绑定事件)
指令绑定事件后,就会监听相应的事件。
v-on:click:
已点击 {{count}} 次
v-on:keyup:先显示值,再弹出层
v-on:keydown:在框中输入先弹出层,再显示输入的值
v-text 和 v-html(解析文本)
v-text:
dangerHTML: '123'
不管是什么,全都解析成文本,里面的HTML标签也全部转义掉:
v-html:
dangerHTML: '123'
v-bind:class
- 对象:{ red:ifAbledRed }
- 三目运算符:ifAbledRed ? “red” : “blue”
- 数组:[{red:“ifAbledRed”},{blue:“ifAbledBlue”}]
v-once
只渲染一次,不再进行渲染。
{{ message }}
v-cloak(防止闪烁)
v-cloak一般是配合 [v-cloak] {display: none; }css 一起使用的。
{{ message }}
下面是一个闪烁的截图代码,当我们给如下红色代码块外加一个setTimeout时间延迟时,然后再去执行我们会发现在网页上什么都没有,会有一个时间的停留,因此提供了一个v-cloak的方法来解决这个问题。
v-pre
原位输出标签内部的元素。