Vue 基础笔记 01

214 阅读2分钟

Vue 基础笔记 01


Vue 模板语法

1. 插值表达式

使用 {{}} 的形式将数据显示在页面上

<div>{{msg}}</div> //msg 是data里面初始化定义的属性

2.指令

指令的本质就是:自定义属性

指令的格式:以v-开始

常用指令:

  • v-bind:动态绑定属性;缩写举例:v-bind:src 缩写为 :src

  • v-on:click:动态绑定事件;缩写举例:@click

  • v-for:遍历

  • v-model:双向数据绑定

  • v-if:动态创建/删除 DOM

  • v-show:动态显示/隐藏 DOM

  • v-text:填充为纯文本

  • v-html:填充HTML片段,该方法存在安全问题。跨域的访问不推荐使用该指令,同网站可以使用。在网站上动态渲染任意HTML是非常危险的,因为容易导致XSS攻击。只在可信的内容上使用v-html,永不用在用户提交的内容上。

  • v-pre:填充原始信息,显示原始信息,跳过编译过程(分析编译过程)

  • v-once:只编译一次,显示内容之后不再具有响应式功能(应用场景:如果显示的信息后续不需要再修改,就可以使用v-once,这样可以提高性能)


Class 与 Style 绑定

1. 绑定HTML Class

  • 对象语法
<!-- 单个类名绑定 -->
<div v-bind:class="{ active: isActive }"></div>
<!-- 多个类名绑定 -->
<div v-bind:class="{ active: isActive, error: isError }"></div>
  • 数组语法
<!-- 单个类名绑定 -->
<div v-bind:class="[activeClass]"></div>
<!-- 多个类名绑定 -->
<div v-bind:class="[activeClass, errorClass]"></div>

2. 绑定内联样式

  • 对象语法
<div v-bind:style="{ color: activeColor, fontSize: fontSize }"></div>
  • 数组语法
<div v-bind:style="[baseStyles, overridingStyles]"></div>

条件渲染

1. v-if

<h1 v-if="true">创建节点</h1>  

2. v-if 和 v-else

<h1 v-if="true">创建节点</h1> 
<h1 v-else >删除节点</h1> 

3. v-if、v-if-else、v-else

<h1 v-if="ceate === 1">创建节点</h1> 
<h1 v-else-if="ceate === 2" >编辑节点</h1> 
<h1 v-else >删除节点</h1>

4. v-show

v-show 不支持 template 语法

<h1 v-show="true">显示节点</h1>  

5. template

tempale:是一个包装元素,不会真正的创建在页面上。

使用场景:标题1、标题2、标题3都收到同一个条件控制时,可使用template。

<template v-show="true">
    <h1>标题1</h1>  
    <h1>标题2</h1>  
    <h1>标题3</h1>  
</template>

6. v-if、v-for组合使用

v-if 与 v-for 一起使用时,v-for 具有比 v-if 更高的优先级。

<ul>
   <li v-for="item in dataList" v-if="true">{{item}}</li>
</ul>  

  • @Title: Vue基础学习笔记01
  • @Content: Vue
  • @Autor: ling.wang
  • @StudyDate: 2022-02-09
  • @WritingDate: 2022-02-10