1.模板语法的概述

  (1)如何理解前端渲染

    将数据填充到HTML标签中,生成静态的HTML内容

2.前端渲染方式

  (1)原生JS拼接字符串

  (2)使用前端模板引擎

  (3)使用Vue特有的模板语法

3.Vue模板语法

  (1)插值表达式

  (2)指令

  (3)事件绑定

  (4)属性绑定

  (5)样式绑定

  (6)分支循环结构

4.指令

  (1)什么是自定义属性?

  (2)指令的本质就是自定义属性

  (3)指令的格式:以v-开头

5.指令介绍

  (1)v-cloak指令用法

    插值表达式存在的问题:当浏览器卡顿时,刷新页面,会出现双大括号问题

    解决对策:使用v-cloak指令

    解决该问题的原理:先隐藏样式的内容,之后在内存中进行值的替换,替换好之后再显示最终效果

  (2)数据绑定指令

    (2.1)v-text 填充纯文本

      相比插值表达式更加简洁

    (2.2)v-html

      本身存在问题,会遭到XSS攻击

      本网站内部数据可以使用,来自第三方的数据不可使用

    (2.3)v-pre填充原始信息

      跳过编译过程,显示原始信息

   (3)数据响应式

    (3.1)如何理解数据响应式?

      HTML5中的数据响应式: 由于屏幕尺寸的变化导致样式的变化

      数据的响应式: (数据的变化导致页面内容的变化)

    (3.2)什么是数据绑定?

      将数据填充到标签中

    (3.3)v-once 只编译一次

      显示内容之后不再具有响应式的功能

  (4)双向数据绑定指令

    (4.1)什么是双向数据绑定

      页面内容的变化引起模型数据的变化

      模型数据的变化引起页面内容的变化

    

    (4.2)双向数据绑定指令v-model

1 <input type="text" v-model='msg'>

    其中的v-model的值是模型数据的值

    (4.3)MVVM设计思想

      M(Model)、V(View)、VM(View-Model)

      View(DOM)  ---(DOM Listener)--->   Model(JavaScript Object)

              <---(Data Bindings)---

2022年01月14日08:35:02

  (5)事件绑定

    (5.1)Vue如何处理事件?

       v-on指令用法

1 <button v-on:click='num++'>点击</button>

       v-on简写形式

1 <button @click='num++'>点击1</button>

    (5.2)事件函数的调用方式

      在定义的Vue实例中使用methods在其中写事件函数

      直接绑定函数名称

1 <button v-on:click='handle'>点击2</button>

      调用函数

1 <button v-on:click='handle()'>点击3</button>

    (5.3)事件函数参数传递

      普通参数和事件对象

1 <button v-on:click='handle2(123,456,$event)'>点击2</button>     
      事件绑定-参数传递
        1、如果事件直接绑定函数名称,那么默认会传递事件对象作为事件函数的第一个参数
        2、如果事件绑定函数调用,那么事件对象必须作为最后一个参数显示传递,并且事件对象的名称必须是$event
      

        event.target.tagName    输出标签名
        event.target.innerHTML    输出标签中的内容
 
    (5.4)事件修饰符
      .stop      阻止冒泡
      传统的原生JS通过事件对象.stopPropagation()来阻止冒泡
1 <button v-on:click.stop='handle1'>点击1</button>
      .prevent  阻止默认行为
      传统的原生JS通过事件对象.preventDefault()来阻止默认行为
1 <a href="https://www.baidu.com" v-on:click.prevent='handle2'>百度</a>

    (5.5)按键修饰符

      .enter 回车键  

1 <input type="text" v-model='pwd' v-on:keyup.enter='handleSubmit'>

      .delete 删除键

1 <input type="text" v-model='uname' v-on:keyup.delete='clearContent'>

  

    (5.6)自定义按键修饰符

      全局 config.keyCodes对象

1 Vue.config.keyCodes.aaa = 65;

    (5.7)属性绑定

      v-bind指令用法

1 <a v-bind:href="url">百度</a>

      缩写形式

1 <a :href="url">百度1</a>

      v-model底层原理实现分析

1 <input type="text" v-bind:value="msg" v-on:input='msg=$event.target.value'>

    (5.8) 样式绑定

      class样式处理

        对象语法

1 <div v-bind:class="{active:isActive,error:isError}">测试样式</div>

        数组语法

1 <div v-bind:class="[activeClass,errorClass]">测试样式</div>

      

      style样式处理

        对象语法

1 <div v-bind:style='{border:borderStyle, width:widthStyle, height:heightStyle}'></div>

        数组语法

1 <div v-bind:style='[objStyles,overrideStyles]'></div>

    

    (5.9) 分支结构

       v-if

       v-else

       v-else-if

       v-show: v-show的原理:控制元素样式是否显示 display:none

      

1 <div v-if='score>=90'>优秀</div>
2 <div v-else-if='score<90 && score >=80'>良好</div>
3 <div v-else-if='score<80 && score >60'>一般</div>
4 <div v-else>不及格</div>

       v-show与v-if的区别

         (1)v-if控制元素是否渲染到页面

         (2)v-show控制元素是否显示(已经渲染到页面)

       

    (5.10)循环结构

      v-for遍历数组

1 <li v-for='item in fruits'>{{item}}</li>
2 <li v-for='(item,index) in fruits'>{{item + '-------' + index}}</li>

      key的作用:帮助vue区分不同的元素,从而提高性能        

1 <li :key='item.id' v-for='(item,index) in fruits'>{{item + '-------' + index}}</li>

      v-for遍历对象

<div v-for='(value,key,index) in obj'>{{value + '---' + key + '---' + index}}</div>

       v-for和v-if结合使用

1 <div v-if='value==12' v-for='(value,key,index) in obj'>{{value + '---' + key + '---' + index}}</div>

  

  声明式编程:模板的结构与最终显示的效果基本一致

  

2.Vue模板语法的更多相关文章

  1. Vue模板语法(二)

    Vue模板语法(二) 样式绑定  class绑定 使用方式:v-bind:class="expression" expression的类型:字符串.数组.对象 1.2 style绑 ...

  2. Vue模板语法(一)

    Vue模板语法 一.插值 1.1.1 文本 {{msg}} 1.1.2 html 使用v-html指令用于输出html代码 1.1.3 属性 HTML属性中的值应使用v-bind指令 1.1.4 表达 ...

  3. Vue模板语法(一)

    Vue模板语法 一 vue简介 Vue.js是一套构建用户界面的渐进式框架. 与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计. Vue 的核心库只关注视图层,并且非常容易学习,非常容易与 ...

  4. Vue 模板语法 && 数据绑定

    1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8" /> 5 & ...

  5. 初始Vue、Vue模板语法、数据绑定(2022/7/3)

    文章目录 1.Vue简介 1.1.Vue的安装使用 1.2.实际的运用案例 1.3.vue开发工具的使用(这个需要在浏览器中安装) 2.初始Vue 2.1 .基础知识 2.1 .代码实例 2.2 .页 ...

  6. (Vue)vue模板语法

    Vue.js 使用了基于 HTML 的模版语法,允许开发者声明式地将 DOM 绑定至底层 Vue 实例的数据.Vue.js 的核心是一个允许你采用简洁的模板语法来声明式的将数据渲染进 DOM 的系统. ...

  7. Vue模板语法与常用指令

    Vue.js 使用了基于 HTML 的模板语法,允许开发者声明式地将 DOM 绑定至底层 Vue 实例的数据.在底层的实现上,Vue 将模板编译成虚拟 DOM 渲染函数,结合相应系统,在应用状态改变时 ...

  8. Vue模板语法(二)

    Vue基础模板语法 二 1. 样式绑定 1.1 class绑定      使用方式:v-bind:class="expression"       expression的类型:字符 ...

  9. (32)Vue模板语法

    模板语法 文本: <span>Message: {{ msg }}</span> v-once 一次性地插值,当数据改变时,插值处的内容不会更新 <span v-once ...

  10. 11 - Vue模板语法

    Vue.js 使用了基于 HTML 的模板语法,允许开发者声明式地将 DOM 绑定至底层 Vue 实例的数据. 所有 Vue.js 的模板都是合法的 HTML ,所以能被遵循规范的浏览器和 HTML ...

随机推荐

  1. ICPC2020 沈阳

    F-Kobolds and Catacombs 牛客网 题意:对于\(n(n<=10^6)\)个数的序列,划分区间,每个区间内部从小到大排序,要求最后整个序列单调不下降,求最多可以划分为多少个区 ...

  2. Characterizing possible failure modes in physics-informed neural network

    NeurIPS 2021 表征PINN中可能的失败模式.本文的思路也比较简单,通过对PINN的优化域进行观察,发现导致PINN训练的原因并不是因为神经网络的表达力不足,而是由于PINN中引入了基于PD ...

  3. dp泄露

    DP泄露 选了三道与RSA的dp泄露有关的题,dp泄露算是比较有辨识度的题型. 目录 DP泄露 原理 ctfshow funnyrsa3 分析 解答 BUUCTF RSA2 分析 解答 [羊城杯 20 ...

  4. js判断当值的比较小的背景为红色

    <!DOCTYPE html> <html> <head> <title></title> </head> <body&g ...

  5. redis过期数据的底层存储结构

  6. G6-Editor 编辑器入门使用教程

    一.前言 G6-Editor 是 AntV 官方提供的.专注于图可视化编辑器的类库,也是市面上完成度较高的图可视化编辑器.然而令人诟病的是其文档对新手极度不友好,我一度怀疑此文档只有他们自己开发人员才 ...

  7. Hbase安装(简)

    1.下载hbase到服务器,解压移动到/usr/local/下 2.更改vim hbase-env.sh加入java工作目录 export JAVA_HOME=/usr/lib/jvm/java-1. ...

  8. springboot java redis 监听超时事件

    package ideal4j.pfa.config.redis; import cn.hutool.core.date.DateTime; import com.alibaba.fastjson.J ...

  9. NX环境变量设置脚本

    1 @ECHO OFF 2 TITLE NX 环境变量设置 3 color 3f 4 :MENU 5 CLS 6 ECHO. NX环境变量设置工具 7 ECHO.******************* ...

  10. HCIA-ICT实战基础12-网络设备安全特性

    HCIA-ICT实战基础-网络设备安全特性 目录 常见设备安全加固策略 网络设备安全加固部署示例 本机防攻击配置 1 常见设备安全加固策略 1.1 为什么需要网络设备安全 网络安全是一个系统工程, 网 ...