模板语法

1、插值

a、文本

数据绑定最常见的形式就是使用 “Mustache” 语法(双大括号)的文本插值
我们在普通插值的时候无论何时,绑定的数据对象上 msg 属性发生了改变,插值处的内容都会更新
【案例】
<div id="app"><span>{{ msg }}</span><br/>
</div><script>var app = new Vue({el:"#app",data:{msg:"wo zai xue xi vue!"}});
</script>
结果就是:wo zai xue xi vue!
我们在使用 v-once指令的时候,你也能执行一次性地插值,当数据改变时,插值处的内容不会更新。
【案例】
<div id="app"><span>{{ msg }}</span><h4 v-once>{{ msg }}</h4>
</div><script>var app = new Vue({el:"#app",data:{msg:"wo zai xue xi vue!"}});
</script>
打印结果看下图

b、纯HTML

双大括号会将数据解释为纯文本,而非 HTML 。为了输出真正的 HTML ,你需要使用 v-html 指令
【案例】
<div id="app"><div v-html="message"></div>
</div><script>var app = new Vue({el:"#app",data:{message:"我是纯HTML"}});
</script>
打印结果:我是纯HTML

c、特性

mustache 语法不能作用在 HTML 属性上,遇到这种情况应该使用 v-bind 指令:
【案例】
<div id="app"><div v-bind:title="msg2">nihao</div>
</div><script>var app = new Vue({el:"#app",data:{msg1:"<li>nihao</li>",msg2:"你好啊"}});
</script>

d、使用 JavaScript 表达式

什么是表达式
由变量函数返回值和运算符以及常量组成的式子就叫表达式

2、指令

什么是指令
指令(Directives)是带有 v- 前缀的特殊属性。
指令的职责是什么
当表达式的值改变时,将其产生的连带影响,响应式地作用于 DOM。
最常用的指令有:
v-bind和v-on

a、参数

指令的参数都有哪些
比如href

b、修饰符

修饰符(Modifiers)是以半角句号 . 指明的特殊后缀,用于指出一个指令应该以特殊方式绑定。例如,.prevent 修饰符告诉 v-on 指令对于触发的事件调用
【案例】
<div id="app"><a v-bind:href="url" v-on:click.prevent="a">百度</a>
</div>
<script>var app = new Vue({el:"#app",data:{msg:"xue xi vue!",url:"http://www.baidu.com"},methods:{a:function(){console.log("阻止跳转!")}}});
</script>
结果看下图

3、过滤器

过滤器是用来干什么的
对文本进行格式化的
过滤器用在什么地方
过滤器可以用在两个地方:mustache 插值和 v-bind 表达式。
【反转案例】
<div id="app">{{msg|guolvqi}}{{msg|guolvqi}}{{msg|guolvqi}}
</div>
<script>var app = new Vue({el:"#app",data:{msg:"xue xi vue!"},//定义过滤器filters: {guolvqi:function(value){return value.split("").reverse().join("")}}});
</script>
打印结果:!euv ix eux !euv ix eux !euv ix eux
【串联一个大写案例】
<div id="app">{{msg|guolvqi|daxie}}{{msg|guolvqi|daxie}}{{msg|guolvqi|daxie}}
</div>
<script>var app = new Vue({el:"#app",data:{msg:"xue xi vue!"},//定义过滤器filters: {guolvqi:function(value){return value.split("").reverse().join("")},daxie:function(value){return value.toUpperCase();}}});
</script>
打印结果:!EUV IX EUX !EUV IX EUX !EUV IX EUX
过滤器也可以接收参数

4、缩写

a、v-bind缩写

【案例】
<div id="app"><div :title="msg">缩写</div>
</div>
<script>var app = new Vue({el:"#app",data:{msg:"xue xi vue!"}});
</script>
结果看下图

b、v-on缩写

【案例】
<div id="app"><div @click="shijian">缩写</div>
</div>
<script>var app = new Vue({el:"#app",data:{msg:"xue xi vue!"},methods:{shijian:function(){console.log(this.msg)}}});
</script>
结果看下图

喜欢的朋友别忘了点赞和收藏啊

Vue的模板语法学习相关推荐

  1. Vue的模板语法及案例

    文章目录 前言 一.双大括号表达式 二.插值 2.1文本 2.2 原始 HTML 2.3 特性 2.4 javascript 表达式 三.指令 3.1 参数 3.2 动态参数 3.3 修饰符 四.指令 ...

  2. [vue] 你知道vue的模板语法用的是哪个web模板引擎的吗?说说你对这模板引擎的理解

    [vue] 你知道vue的模板语法用的是哪个web模板引擎的吗?说说你对这模板引擎的理解 模板引擎: 负责组装数据,以另外一种形式或外观展现数据. 优点: 可维护性(后期改起来方便): 可扩展性(想要 ...

  3. 【Vue】—Vue的模板语法

    [Vue]-Vue的模板语法 在template中写HTML时,如果需要渲染变量或者表达式,可以使用{{ }}形式来渲染,这个{{ }}就是模板语法,可以把变量或者表达式的结果渲染出来. 模板语法渲染 ...

  4. 从零学习Vue - 02模板语法、el与data两种写法、mvvm模型、数据代理

    root容器里的代码被称为模板,有了模板会有特殊的模板语法.Vue模板中语法有两大类,一类是插值语法,另一类是指令语法. 插值语法 功能:用于解析标签体内容.写法:{{xxx}},xxx为js表达式, ...

  5. vue基础--模板语法、常用指令:v-if、v-show、v-for、虚拟DOM、v-once、v-cloak、v-text、v-html、v-bind、v-on、自定义指令

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

  6. Vue2(一):初识Vue、模板语法、数据绑定、el和data的两种写法、MVVM、数据代理、事件

    Vue2学习笔记:第一章 一.初识Vue 1. Vue的特点 2. Vue实例中的el和data 3.总结 二.模板语法 1.插值语法 2.指令语法 三.数据绑定 1.单向数据绑定(v-bind) 2 ...

  7. Vue.js 模板语法

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

  8. Vue 3 模板语法

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

  9. 四、Vue.js 模板语法

    本章概要 应用程序实例 插值 指令 Vue.js 使用了基于 HTML 的模板语法,允许开发者声明式地将呈现的 DOM 绑定至底层组件实例的数据.所有的 Vue.js 模板都是有效的 HTML ,可以 ...

最新文章

  1. 阿里巴巴为什么能抗住90秒100亿?看完这篇你就明白了!
  2. 一个植物转录组项目的实战
  3. Unsupervised Feature Selection in Signed Social Networks 阅读笔记
  4. linux IP类常用命令
  5. Android4.0添加java层服务
  6. 近世代数--极大理想--I是R的极大理想↔R/I是域
  7. 小程序 获取腾讯地图计算两经纬度的实际距离(可批量)_多地打卡
  8. Spiking-YOLO : 前沿!脉冲神经网络在目标检测的首次尝试 | AAAI 2020
  9. 2017.4.16 阶乘之和 思考记录
  10. 【安装包】PhpStorm-2018.1
  11. 使用python实现日志功能
  12. 文件恢复原理Linux文件恢复工具-foremostextundelete
  13. top在linux的命令,Linux命令详解之–top命令 | Linux大学
  14. NTL-NTL安装报错
  15. 3.3 CPU共享功能
  16. STM32 BOOT模式配置以及作用
  17. PINTOS——Project 1: Threads
  18. java 数组 未初始化_Java数组未保持初始化状态
  19. 计算机控制技术于海生期末考试,计算机控制技术(于海生着)_复习题..doc
  20. 开户行查询 API数据接口

热门文章

  1. (Question)CSS中position的绝对定位问题
  2. 【Big Data】HADOOP集群的配置(一)
  3. scala入门之代码补全
  4. server-send event object
  5. Linux加入到Windows域 收藏
  6. 使用alterMIME实现添加message footer功能
  7. ZOJ1002 Fire Net(非递归版)
  8. 阿里巴巴连任 Java 全球管理组织席位
  9. break continue
  10. 物联网在“最后一公里”投递中的应用