🌻Vue 指令

type
status
date
slug
summary
tags
category
icon
password
☀️
待补充
概念:指令(Directives)是 Vue 提供的带有 v- 前缀 的 特殊 标签属性
为啥要学:提高程序员操作 DOM 的效率。
vue 中的指令按照不同的用途可以分为如下 6 大类:
  • 内容渲染指令(v-html、v-text)
  • 条件渲染指令(v-show、v-if、v-else、v-else-if)
  • 事件绑定指令(v-on)
  • 属性绑定指令 (v-bind)
  • 列表渲染指令(v-for)
  • 双向绑定指令(v-model)

内容渲染指令

内容渲染指令用来辅助开发者渲染 DOM 元素的文本内容。常用的内容渲染指令有如下2 个:

v-text

类似innerText
  • 使用语法:<p v-text="uname">hello</p>,意思是将 uame 值渲染到 p 标签中类似 innerText,使用该语法,会覆盖 p 标签原有内容

v-html

类似 innerHTML
  • 使用语法:<p v-html="intro">hello</p>,意思是将 intro 值渲染到 p 标签中类似 innerHTML,使用该语法,会覆盖 p 标签原有内容类似 innerHTML,使用该语法,能够将HTML标签的样式呈现出来。

条件渲染指令

条件判断指令,用来辅助开发者按需控制 DOM 的显示与隐藏。条件渲染指令有如下两个,分别是:

v-show

  1. 作用: 控制元素显示隐藏
  1. 语法: v-show = "表达式" 表达式值为 true 显示, false 隐藏
  1. 原理: 切换 display:none 控制显示隐藏
  1. 场景:频繁切换显示隐藏的场景

v-if

  1. 作用: 控制元素显示隐藏(条件渲染)
  1. 语法: v-if= "表达式" 表达式值 true显示, false 隐藏
  1. 原理: 基于条件判断,是否创建 或 移除元素节点
  1. 场景: 要么显示,要么隐藏,不频繁切换的场景

v-else 和 v-else-if

  1. 作用:辅助v-if进行判断渲染
  1. 语法:v-else v-else-if="表达式"
  1. 需要紧接着v-if使用

事件绑定指令-todo

使用Vue时,如需为DOM注册事件,及其的简单,语法如下:
  • <button v-on:事件名="内联语句">按钮</button>
  • <button v-on:事件名="处理函数">按钮</button>
  • <button v-on:事件名="处理函数(实参)">按钮</button>
  • v-on: 简写为 @

属性绑定指令

  1. 作用:动态设置html的标签属性 比如:src、url、title
  1. 语法v-bind:属性名=“表达式”
  1. v-bind:可以简写成 => :
比如,有一个图片,它的 src 属性值,是一个图片地址。这个地址在数据 data 中存储。
则可以这样设置属性值:
  • <img v-bind:src="url" />
  • <img :src="url" /> (v-bind可以省略)

列表渲染指令

Vue 提供了 v-for 列表渲染指令,用来辅助开发者基于一个数组来循环渲染一个列表结构。
v-for 指令需要使用 (item, index) in arr 形式的特殊语法,其中:
  • item 是数组中的每一项
  • index 是每一项的索引,不需要可以省略
  • arr 是被遍历的数组,此语法也可以遍历对象和数字
  • key
    • 语法: key="唯一值"
    • 作用:给列表项添加的唯一标识。便于Vue进行列表项的正确排序复用
    • 为什么加key:Vue 的默认行为会尝试原地修改元素(就地复用
    • 注意:
      • key 的值只能是字符串 或 数字类型
      • key 的值必须具有唯一性
      • 推荐使用 id 作为 key(唯一),不推荐使用 index 作为 key(会变化,不对应)
 

双向绑定指令

所谓双向绑定就是:
  1. 数据改变后,呈现的页面结果会更新
  1. 页面结果更新后,数据也会随之而变
作用:表单元素(input、radio、select)使用,双向绑定数据,可以快速 获取设置 表单元素内容
语法:v-model="变量"
🌻
欢迎在下方留言讨论~
Vue 简介与 HelloWorldVue 模板语法
Loading...
目录