条件

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. SpringBoot热部署(7)

    1.引入热部署依赖包 <dependency> <groupId>org.springframework.boot</groupId> <artifactId ...

  2. vue强制组件重新渲染

    有时候,依赖 Vue 响应方式来更新数据是不够的,相反,我们需要手动重新渲染组件来更新数据.或者,我们可能只想抛开当前的DOM,重新开始.那么,如何让Vue以正确的方式重新呈现组件呢? 强制 Vue ...

  3. hudi clustering 数据聚集(一)

    概要 数据湖的业务场景主要包括对数据库.日志.文件的分析,而管理数据湖有两点比较重要:写入的吞吐量和查询性能,这里主要说明以下问题: 1.为了获得更好的写入吞吐量,通常把数据直接写入文件中,这种情况下 ...

  4. Linux USB (目录)

    1.USB 总线简介 2.USB 协议分析 3.USB Host 详解 4.USB Device 详解 5.usbip (USB Over IP) 使用实例

  5. 第四周PTA笔记 好吃的巧克力+特殊的翻译+下次一定(续)+走迷宫

    好吃的巧克力 超市正在特价售卖巧克力,正好被贪吃的Lucky_dog看见了. 巧克力从左到右排成一排,一共有N个,M种. 超市有一个很奇怪的规定,就是你在购买巧克力时必须提供两个数字a和b,代表你要购 ...

  6. Scrapy入门到放弃05:让Item在Pipeline中飞一会儿

    前言 "又回到最初的起点,呆呆地站在镜子前". 本来这篇是打算写Spider中间件的,但是因为这一块涉及到Item,所以这篇文章先将Item讲完,顺便再讲讲Pipeline,然后再 ...

  7. [atARC116F]Deque Game

    假设两个操作者分别为$A$和$B$,其中$A$希望最大.$B$希望最小 (并不默认$A$为整局游戏的先手,仅是最终的结果考虑$A$为先手时) 记第$i$个队列第$j$个元素为$a_{i,j}$(其中$ ...

  8. [cf1396E]Distance Matching

    根据$dis(x,y)=d[x]+d[y]-2d[lca(x,y)]$,由于所有点都出现了1次,距离即$\sum_{i=1}^{n}d_{i}-2\sum d[lca(x,y)]$(以下假设根深度为0 ...

  9. 删除本地仓库中的lastUpdated文件.bat

    @echo off @ ECHO. @ ECHO. @ ECHO. 说 明 @ ECHO ------------------------------------------------------- ...

  10. java的String参数格式化

    String类的format()方法用于创建格式化的字符串以及连接多个字符串对象.熟悉C语言的同学应该记得C语言的sprintf()方法,两者有类似之处.format()方法有两种重载形式. form ...