vueJS中的内置指令

104 阅读2分钟

基本指令

  • v-cloak一般与display:none进行结合使用

作用:解决初始化慢导致页面闪动的最佳实践

  • v-once

定义它的元素和组件只渲染一次

条件渲染指令

  • v-if, v-eles-if ,v-else

v-if的弊端 : Vue 在渲染元素时 ,出于效率考虑,会尽可能地复用已有的元素而非重新渲染, 因 此会出现乌龙 只会渲染变化的元素,也就是说,input元素被复用了

解决方法:加key,唯一,提供key值可以来决定是否复用该元素

  • v-show

只改变了css属性display

v-if和v-show的比较

  • v-if: 实时渲染:页面显示就渲染,不显示。我就给你移除
  • v-show: v-show的元素永远存在也页面中,只是改变了css的display的属性

列表渲染指令v-for

用法: 当需要将一个数组遍历或枚举一个对象属性的时候循环显示时,就会用到列表渲染指令v-for。

两种使用场景:

  • 遍历多个对象
  • 遍历一个对象的多个属性

数组更新,过滤与排序

  • push() 在末尾添加元素
  • pop() 将数组的最后一个元素移除
  • shift() 删除数组的第一个元素
  • unshift():在数组的第一个元素位置添加一个元素
  • splice() :可以添加或者删除函数--返回删除的元素
  • sort():排序
  • reverse()对数组进行反转

splice()三个参数:

  • 第一个参数 表示开始操作的位置
  • 第二个参数表示:要操作的长度
  • 第三个为可选参数:(要添加的写在这里,个数不限)

两个数组变动vue检测不到:

  • 改变数组的指定项
  • 改变数组长度
  • 过滤:filter

解决方法

  • set
    • 改变指定项: Vue.set(app.arr,1,”car”);
  • splice
    • 改变数组长度

修饰符

在vue中传入event对象用 $event

向上冒泡

  • stop:阻止单击事件向上冒泡
  • prevent:提交事件并且不重载页面
  • self:只是作用在元素本身而非子元素的时候调用
  • once: 只执行一次的方法

可以监听键盘事件:vueJS为我们提供了: .enter .tab .delet