条件

v-if

  v-if 指令用于条件性地渲染一块内容。这块内容只会在指令的表达式返回 truthy 值的时候被渲染。

v-show

  v-show 指令也是用于根据条件展示一块内容。v-show 只是简单地切换元素的 CSS 属性 display

v-if 与 v-show

  v-if 有更高的切换开销,而 v-show 有更高的初始渲染开销。因此,如果需要非常频繁地切换,则使用 v-show 较好;如果在运行时条件很少改变,则使用 v-if 较好。

v-else

  v-else 元素必须紧跟在带 v-if 或者 v-else-if 的元素的后面,否则它将不会被识别。

v-else-if

  v-else-if 也必须紧跟在带 v-if 或者 v-else-if 的元素之后。

循环

v-for

  可以用 v-for 遍历数组中的元素

       两个参数:item - 数组元素 , index - 索引
<ul>
         <li v-for="(item, index) in items">
          {{ parentMessage }} - {{ index }} - {{ item.message }}
         </li>
       </ul>

  遍历对象中的属性

    两个参数:value - 值 ,name - 键名       
<div v-for="(value, name) in object">
      {{ name }}: {{ value }}
       </div>

   三个参数:value - 值 ,name - 键名 ,index - 索引
<div v-for="(value, name, index) in object">
{{ index }}. {{ name }}: {{ value }}
</div>

  也可以用 of 代替 in作为分隔符

        <div v-for="item of items"></div>

  在进行遍历数据的同时需要为每项提供一个唯一key属性,否则Vue会有一个warn提示。

  因为标记唯一的key属性能跟踪每个节点的身份,从而重用和重新排序现有元素,防止渲染错误。

事件

v-on

  事件绑定监听器,简写符号为@。

  用在普通元素上时,只能监听原生 DOM 事件。用在自定义元素组件上时,也可以监听子组件触发的自定义事件

  修饰符

  • .stop - 调用 event.stopPropagation()。 阻止捕获和冒泡阶段中当前事件的进一步传播。

  • .prevent - 调用 event.preventDefault()。 阻止事件默认行为,并不阻止事件传播

  • .capture - 添加事件侦听器时使用 capture 模式。

  • .self - 只当事件是从侦听器绑定的元素本身触发时才触发回调。

  • .{keyCode | keyAlias} - 只当事件是从特定键触发时才触发回调。

  • .native - 监听组件根元素的原生事件。

  • .once - 只触发一次回调。

  • .left - 只当点击鼠标左键时触发。

  • .right - 只当点击鼠标右键时触发。

  • .middle - 只当点击鼠标中键时触发。

  • .passive - 以 { passive: true } 模式添加侦听器

v-once

  只渲染元素和组件一次。如果一个组件中包含了大量静态内容,就可以添加v-once指令来计算一次并进行缓存。

  不要过度使用

属性

v-bind

  动态地绑定一个或多个特性,或一个组件 prop 到表达式。简写为 :

  修饰符:

  • .prop - 被用于绑定 DOM 属性 (property)。

  • .camel - 将 kebab-case 特性名转换为 camelCase. 驼峰化

  • .sync 语法糖,会扩展成一个更新父组件绑定值的 v-on 侦听器。

双向数据绑定

v-model

  在表单控件或者组件上创建双向绑定。

  修饰符

  • .lazy - 取代 input 监听 change 事件

  • .number - 输入字符串转为有效的数字

  • .trim - 输入首尾空格过滤

其他

v-text

  更新元素的 textContent。如果要更新部分的 textContent ,需要使用 {{ Mustache }} 插值。

v-html

  更新元素的 innerHTML

  注意:在网站上动态渲染任意 HTML 是非常危险的,因为容易导致 XSS 攻击。只在可信内容上使用 v-html,永 不用在用户提交的内容上。

v-pre

  跳过这个元素和它的子元素的编译过程。内部内容不会被编译,会原样输出。

v-cloak

  这个指令保持在元素上直到关联实例结束编译。

Vue API 3 (模板语法 ,指令)的更多相关文章

  1. Vue API 3模板语法 ,指令

    条件# v-if# v-if 指令用于条件性地渲染一块内容.这块内容只会在指令的表达式返回 truthy 值的时候被渲染. v-show# v-show 指令也是用于根据条件展示一块内容.v-show ...

  2. Vue实例与模板语法

    VUE基础使用方法 一.安装 1.NPM 在用 Vue 构建大型应用时推荐使用 NPM 安装[1].NPM 能很好地和诸如 webpack 或 Browserify 模块打包器配合使用.同时 Vue ...

  3. 前端框架VUE——数据绑定及模板语法

    一.数据绑定 Vue.js 的核心是一个允许采用简洁的模板语法来声明式地将数据渲染进 DOM 的系统: <div id="app"> {{ msg }} </di ...

  4. Vue介绍以及模板语法-插值

    1.Vue的介绍 Vue是一套用于构建用户界面的渐进式框架. 注意:Vue是一个框架,相对于jq库来说,是由本质的区别的:https://cn.vuejs.org/ Vue不支持IE8及一下版本,因为 ...

  5. Vue笔记之模板语法

    插值 比较常用的就是插值,插值就是{{ foobar }}用两个大括号包起来的一个变量,显示的时候会将双大括号标签替换为这个变量的值. 基本的用法就是: <p>{{ message }}& ...

  6. vue学习笔记 模板语法(三)

    <div id="kk"> <div>直接输出文本:{{msg}}</div> <div>自定义过滤器输出文本:{{msg|capi ...

  7. Vue详细介绍模板语法和过滤器的使用!

    表达式 {{ XXX }}使用过滤器 {{ XXX | yyy}}使用多个过滤器 {{ XXX | yyy | yyy1}}过滤器带参数 {{ XXX | yyy(123,"zhuiszhu ...

  8. 【Vue】Vue框架常用知识点 Vue的模板语法、计算属性与侦听器、条件渲染、列表渲染、Class与Style绑定介绍与基本的用法

    Vue框架常用知识点 文章目录 Vue框架常用知识点 知识点解释 第一个vue应用 模板语法 计算属性与侦听器 条件渲染.列表渲染.Class与Style绑定 知识点解释 vue框架知识体系 [1]基 ...

  9. vue基础---模板语法

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

  10. Vue.js模板语法介绍

    Vue.js模板.指令 模板语法概述 1.如何理解前端渲染? ​ 把数据填充到HTML标签中,一般我们使用Ajax将数据从后台查询出,结合模板() 2.前端渲染方式 2.1.原生js拼接字符串 ​ 使 ...

随机推荐

  1. Linux&C网络编程————“聊天室”

    从上周到现在一直在完成最后的项目,自己的聊天室,所以博客就没怎么跟了,今天晚上自己的聊天室基本实现,让学长检查了,也有好些bug,自己还算满意,主要实现的功能有: 登录注册 附近的人(服务器端全部在线 ...

  2. {% csrf_token %} 原理和作用 (踩坑必看)

    本博客已暂停更新,请转自新博客 https://www.whbwiki.com/320.html 继续阅读 简介 在django中我们需要在templates的form中加入{%csrf_token% ...

  3. Maven 问题 Failure to transfer org.apache.maven.plugins:maven-surefire-plugin:pom:3.0.0-M1 的处理

    一.问题描述 Maven项目报错,该项目是导入的项目,然后再通过开发工具打开项目时,pom.xml文件报错. 并且新建Maven Project 也会报错. 二.报错详细Failure to tran ...

  4. go条件语句

    1. if else package main import "fmt" func main(){ a :=123 if a>100{ fmt.prinln("大于 ...

  5. 一次Java线程池误用(newFixedThreadPool)引发的线上血案和总结

    一次Java线程池误用(newFixedThreadPool)引发的线上血案和总结 这是一个十分严重的线上问题 自从最近的某年某月某天起,线上服务开始变得不那么稳定(软病).在高峰期,时常有几台机器的 ...

  6. C++基本程序设计——面向对象程序设计课堂笔记

    主要对老师上课的ppt的笔记整理 C++基本程序设计 1.c++的输入输出 使用cin,cout和流运算符,开头须有 #include<iostream> (1)cin语句:cin> ...

  7. 菜鸡的Java笔记 第三十七 - java 线程与进程

    线程与进程        线程与进程的区别                最早的的时候DOS 系统有一个特点:只要电脑有病毒,那么电脑就死机了,是因为传统的DOS 系统属于单进程的操作系统       ...

  8. 第十五章---JSON

    目录: (一)介绍 (二)Python 编码为 JSON 类型转换对应表 (三)JSON 解码为 Python 类型转换对应表 (四)实例 正文: (一)介绍 JSON (JavaScript Obj ...

  9. WinForm训练一_改变窗体大小

    1 //引用系统命名空间 2 using System; 3 //项目命名空间 4 using System.Collections.Generic; 5 using System.Component ...

  10. [loj2049]网络

    考虑整体二分,假设二分到区间$[l,r]$,即要对若干个询问,判断这些询问的答案与$mid=\lfloor\frac{l+r}{2}\rfloor$的关系 根据题意,答案$\le mid$等价于重要度 ...