一、插值

1、文本

数据绑定最常见的形式是使用双大括号({{  }}——“Mustache”语法)的文本插值

<div class="mustache">
<span>小红:{{ juice }}</span>
<span v-once>不变的选择:{{ juice1 }}</span>
</div> juice: '奇异果',
juice1: '百香果' 

2、原始HTML:双大括号会将数据解释为普通文本,而非HTML代码;为了输出真正的HTML,可以使用v-html指令;

    <div>
<p>mustache普通文本: {{ rawHtml }}</p>
<p>使用v-html: <span v-html="rawHtml"></span></p>
</div>     rawHtml: '<span style="color:lightblue">html输出,这里是蓝色的呦~</sapn>',

3、特性

“Mustache”语法不能用在HTML特性上,遇到这种情况应该使用 v-bind指令;

1)、v-bind使用方法:

(1)动态的绑定一个或多个特性,,或一个组件prop到表达式;

(2)在绑定class或style特性时,支持其他类型的值,如数组或对象;

(3)在绑定prop时,prop必须在子组件中声明。可以用修饰符制定不同的绑定类型;

(4)没有参数时,可以绑定到一个包含键值对的对象;注意:此时,class和style绑定不支持数组和对象;

2)、举例:

在布尔特性的情况下,他们的存在即暗示为true

<template>
<div class="hello" >
<div class="bind">
<button v-bind:disabled="isButtonDisabled">button</button>
</div>
</div>
</template> <script>
export default {
name: 'HelloWorld',
data () {
return {
isButtonDisabled: true
}
}
}
</script>

    

4、使用JavaScript表达式

除了绑定简单的属性键值,对于所有的数据绑定,vue还可以使用JavaScript表达式;

注意:只是表达式,语句是不会被解析的;

<template>
<div class="hello" >
<div class="javascript_">
<p class="binary">数量: {{ numbers + 1 }}</p>
<p class="ternary">甜度: {{ sweet ? 'sugar' : 'no-sugar' }}</p>
<p class="def">编号: {{ price.split('').reverse().join('') }}</p>
</div>
</div>
</template> <script>
export default {
name: 'HelloWorld',
data () {
return {
numbers: 5,
sweet: true,
price: '23452',
} }
}
</script> <style scoped>
.javascript_ p{
font-size: 16px;
color: cadetblue;
}

二、指令

指令是带有 v- 前缀的特殊属性。指令属性的预期值是单个Javascripit表达式。指令的职责是:当表达式的值改变时将其产生的连带影响,响应式的作用于DOM,

1、参数

一些指令能够接受一个参数,在指令名称之后以冒号表示,例如:

<template>
<div class="hello" >
<div class="direc">
<a class="koudai_link" v-bind:href="url_">口袋学生证</a>
<a class="koudai_link" v-on:click="change_style">点击打印123</a>
</div>
</div>
</template> <script>
export default {
name: 'HelloWorld',
data () {
return {
url_: 'http://koudaixueshengzheng.cn'
}
},
methods: {
change_style: function () {
console.log(123)
}
}
}
</script> <style scoped>
.koudai_link{
font-size: 16px;color: white;text-decoration: none;display: block;background: palevioletred;border-radius: 10px;width: 150px;height: 40px;line-height: 40px;
letter-spacing: 2px;font-weight: bold;margin: 0 auto;margin-bottom: 10px;cursor: pointer;
}
</style> 

    

2、修饰符

修饰符是以半角句号 ‘.’指明的特殊后缀,用于指出一个指令应该以特殊方式绑定;后面详细介绍;

三、缩写

1、v-bind

<!-- 完整语法 -->
<a v-bind:href="url">...</a> <!-- 缩写 -->
<a :href="url">...</a>

2、v-on

<!-- 完整语法 -->
<a v-on:click="doSomething">...</a> <!-- 缩写 -->
<a @click="doSomething">...</a>

初识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 ...

随机推荐

  1. c#动态编译并执行字符串

    比较简单,步骤是这样的 string -> compiler -> assembly -> reflection -> execution 直接上代码: using Syste ...

  2. Linux网络设备驱动架构

    Linux网络设备驱动程序体系结构分为四层:网络协议接口层.网络设备接口层.提供实际功能的设备驱动层以及网络设备与媒介层. (1)网络协议接口层向网络层协议提供统一的数据包收发接口,不论上层协议是AR ...

  3. libev-4.20编译安装及简单使用

    1.源码下载地址: http://www.csdn.net/tag/libev/download 2.库的编译与安装 解压文件,进入文件目录 编译的时候需要首先切换为管理员(root)账户,然后执行以 ...

  4. getRequestDispatcher()和response.sendRedirect()

    request.getRequestDispatcher()是请求转发,前后页面共享一个request   response.sendRedirect()是重新定向,前后页面不是一个request.

  5. Using $this when not in object context in

    错误信息:$this引用没有上下文 原因:在PHP5中,static声明的静态方法里不可以使用$this 需要使用self来引用当前类中的方法或是变量. 引用的方法里不可以带$this(示例代码中为g ...

  6. 【转】用Linux命令行获取本机外网IP地址

    $ curl ifconfig.me $ curl icanhazip.com $ curl ident.me $ curl ipecho.net/plain $ curl whatismyip.ak ...

  7. linux中编译安装Apache、PHP、MySQL(上)

    1.简介 在阿里云买了个云服务器,一直没时间折腾.过了近十天了吧,才有时间好好玩玩这个云服务器.自己是做Web开发的,所以我需要的开发环境是LAMP.之前打算是采用yum安装,不过yum安装apach ...

  8. C#基础(五)--枚举的含义及其应用

    本章讲解如下枚举的如下几个知识点:    1.什么是枚举?    2.枚举是值类型还是引用类型?    3.如何定义枚举?    4.枚举的好处?    5.枚举在实际系统开发过程中的用处?    一 ...

  9. chromedriver禁用图片,禁用js,切换UA

    selenium 模拟chrome浏览器,此时就是一个真实的浏览器,一个浏览器该加载的该渲染的它都加载都渲染,所以爬取网页的速度很慢.如果可以不加载图片等操作,网页加载速度就会快不少,代码中列出了了禁 ...

  10. python中用xpath匹配文本段落内容的技巧

    content = item.xpath('//div[@class="content"]/span')[0].xpath('string(.)') content = item. ...