指令集
v-text
类型:
String
详细:
更新元素的
textContent
。示例:
|
v-html
类型:
String
详细:
更新元素的
innerHTML
。内容按普通 HTML 插入——数据绑定被忽略。在网站上动态渲染任意 HTML 是非常危险的,因为容易导致 XSS 攻击。只在可信内容上使用
v-html
,永不用在用户提交的内容上。示例:
|
v-if
类型:
*
用法:
根据表达式的值的真假条件渲染元素。在切换时元素及它的数据绑定 / 组件被销毁并重建。
v-show
类型:
*
用法:
根据表达式的值的真假切换元素的
display
CSS 属性,如果有过渡将触发它。
v-else
不需要表达式
限制: 前一兄弟元素必须有
v-if
或v-show
。用法:
为
v-if
和v-show
添加 “else 块”。
|
v-for
类型:
Array | Object | Number | String
用法:
基于源数据将元素或模板块重复数次。指令的值必须使用特定语法
alias (in|of) expression
,为当前遍历的元素提供别名:
|
另外也可以为数组索引指定别名(如果值是对象可以为键指定别名):
|
v-on
缩写:
@
类型:
Function | Inline Statement
参数:
event (required)
修饰符:
.stop
- 调用event.stopPropagation()
。.prevent
- 调用event.preventDefault()
。.capture
- 添加事件侦听器时使用 capture 模式。.self
- 只当事件是从侦听器绑定的元素本身触发时才触发回调。.{keyCode | keyAlias}
- 只在指定按键上触发回调。
用法:
绑定事件监听器。事件类型由参数指定。表达式可以是一个方法的名字或一个内联语句,如果没有修饰符也可以省略。
用在普通元素上时,只能监听原生 DOM 事件。用在自定义元素组件上时,也可以监听子组件触发的自定义事件。
在监听原生 DOM 事件时,方法以事件为唯一的参数。如果使用内联语句,语句可以访问一个
$event
属性:v-on:click="handle('ok', $event)"
。示例:
|
v-bind
缩写:
:
类型:
* (with argument) | Object (without argument)
参数:
attrOrProp (optional)
修饰符:
.sync
- 双向绑定,只能用于 prop 绑定。.once
- 单次绑定,只能用于 prop 绑定。.camel
- 将绑定的特性名字转回驼峰命名。只能用于普通 HTML 特性的绑定,通常用于绑定用驼峰命名的 SVG 特性,比如viewBox
。
用法:
动态地绑定一个或多个 attribute,或一个组件 prop 到表达式。
在绑定
class
或style
时,支持其它类型的值,如数组或对象。在绑定 prop 时,prop 必须在子组件中声明。可以用修饰符指定不同的绑定类型。
没有参数时,可以绑定到一个对象。注意此时
class
和style
绑定不支持数组和对象。示例:
|
v-model
类型: 随表单控件类型不同而不同。
限制:
<input>
<select>
<textarea>
用法:
在表单控件上创建双向绑定。
v-el
不需要表达式
参数:
id
(必需)用法:
为 DOM 元素注册一个索引,方便通过所属实例的
$els
访问这个元素。注意:
因为 HTML 不区分大小写,camelCase 名字比如
v-el:someEl
将转为全小写。可以用v-el:some-el
设置this.$els.someEl
。示例:
|
|
v-pre
不需要表达式
用法:
跳过编译这个元素和它的子元素。可以用来显示原始 Mustache 标签。跳过大量没有指令的节点会加快编译。
示例:
|