Vue-计算属性,指令,key

本文详细解读了Vue中Mustache模板语法及其指令的使用,包括v-for、v-html、v-on等基本指令,以及v-bind、v-show、v-model等高级特性,还介绍了关键的特殊属性如key和计算属性的差异。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

模板语法

内容

vue中的元素内容使用mustache模板引擎进行解析

mustache:https://github.com/janl/mustache.js

指令

指令会影响元素的渲染行为,指令始终以v-开头

基础指令:

  • v-for:循环渲染元素
  • v-html:设置元素的innerHTML,该指令会导致元素的模板内容失效
  • v-on:注册事件
    • 该指令由于十分常用,因此提供了简写@
    • 事件支持一些指令修饰符,如prevent
    • 事件参数会自动传递
  • v-bind:绑定动态属性
    • 该指令由于十分常用,因此提供了简写:
  • v-show:控制元素可见度
  • v-if、v-else-if、v-else:控制元素生成
  • v-model:双向数据绑定,常用于表单元素
    • 该指令是v-onv-bind的复合版
    • event.target.value

进阶指令:

  • v-slot
  • v-text
  • v-pre
  • v-cloak
  • v-once
  • 自定义指令

特殊属性

最重要的特殊属性:key

该属性可以干预diff算法,在同一层级,key值相同的节点会进行比对,key值不同的节点则不会

在这里插入图片描述

在循环生成的节点中,vue强烈建议给予每个节点唯一且稳定的key
在这里插入图片描述

其他特殊属性:

  • ref
  • is
  • slot
  • slot-scope
  • scope

计算属性

computed: {
  // 仅访问器
  prop(){
    return ...
  }
  // 访问器 + 设置器
  fullProp: {
    get(){
      return ...
    },
    set(val){
      ...
    }
  }
}

计算属性和方法的区别:

  • 计算属性可以赋值,而方法不行
  • 计算属性会进行缓存,如果依赖不变,则直接使用缓存结果,不会重新计算
  • 凡是根据已有数据计算得到新数据的无参函数,都应该尽量写成计算属性,而不是方法
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值