vue部分内置指令

Posted 别Null.了

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue部分内置指令相关的知识,希望对你有一定的参考价值。

指令:是带有 v- 前缀的特殊属性,职责是当表达式的值改变时,将其产生的连带影响,响应式的作用于dom

v-html :更新元素的innerHTML,会把标签名也带上

v-text :更新元素的textcontent,不支持标签

<span v-text="msg"></span> 等同于 < span>msg </ span>

v-cloak :该指令不需要表达式,在还没有执行到vue代码的时候隐藏元素,可解决页面“闪烁”问题。v-cloak是一个解决初始化慢导致页面闪动的最佳实践

v-once :不需要表达式,作用是定义它的元素或组件只渲染一次,包括元素或组件的所有子节点

v-pre :不需要表达式,跳过这个元素以及子元素的编译过程,以此来加快整个项目的编译速度

v-on:(@) :用于监听DOM事件,例如:v-on:click

@click表达式可以直接使用javascript语句,也可以是一个在vue实例中methods选项内的函数名,可以在方法中传递参数。

<a v-on:click="add">...</a>

<a @click="add()">...</a>

在@绑定的事件后加小圆点“ . ”,再跟一个后缀就是修饰符

常用修饰符有:

  •        .stop
  •        .prevent  
  •        .capture  
  •        .self  
  •        .once
//阻止单击事件冒泡:
<a @click.stop="handle"></a>

//修饰符的串联:     
<a @click.stop.prevent="handle"></a>

//一个事件添加事件侦听器时使用事件捕获模式:    
<div @click.capture="handle">...</div>

//只有当事件在该元素本身(而不是子元素)触发时触发回调: 
<div @click.self="handle">...</div>

//一个事件只能触发一次,组件同样适用:    
<div @click.once="handle">...</div>

//在表单元素上监听键盘事件时可以使用按键修饰符。比如只有在keyCode是13时调用vm.submit():    <input @keyup.13="submit" />

v-bind(:) :响应并更新DOM特性。主要用法是绑定属性,动态更新HTML元素上的属性

v-model  :数据双向绑定,用来在input、select、text、checkbox、radio等表单控件元素上创建双向数据绑定的

v-show  :条件渲染,为DOM设置css的style属性

v-if/v-else/v-else-if  :条件渲染,控制DOM元素的添加与删除,在render函数中就是三元表达式

v-for :循环指令,优先级比v-if高,尽量避免和v-if同时使用。需要增加唯一key属性,尽量避免使用index或随机数。

v- for 的表达式遍历数组时支持一个可选参数作为当前项的索引

<li v-for="(book , index) in books "> index - book.name )</li>

v- for 的表达式遍历对象属性时,有两个可选参数,分别是键名(key)和索引(index)     

<li v-for="(value , key , index) in user "> index  -  key  :  value </li>

v- for 的表达式还可以迭代整数

<span v-for="n in 10"> n </span> 

以上是关于vue部分内置指令的主要内容,如果未能解决你的问题,请参考以下文章

vue部分内置指令

vue部分内置指令

vue部分内置指令

Vue常用指令

如何测试在悬停/鼠标悬停时调用了 Vue 指令?

VUE之自定义指令