初识Vue——模板语法
一、插值
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——模板语法的更多相关文章
- Vue模板语法(二)
Vue模板语法(二) 样式绑定 class绑定 使用方式:v-bind:class="expression" expression的类型:字符串.数组.对象 1.2 style绑 ...
- Vue模板语法(一)
Vue模板语法 一.插值 1.1.1 文本 {{msg}} 1.1.2 html 使用v-html指令用于输出html代码 1.1.3 属性 HTML属性中的值应使用v-bind指令 1.1.4 表达 ...
- Vue模板语法(一)
Vue模板语法 一 vue简介 Vue.js是一套构建用户界面的渐进式框架. 与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计. Vue 的核心库只关注视图层,并且非常容易学习,非常容易与 ...
- Vue 模板语法 && 数据绑定
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8" /> 5 & ...
- 初始Vue、Vue模板语法、数据绑定(2022/7/3)
文章目录 1.Vue简介 1.1.Vue的安装使用 1.2.实际的运用案例 1.3.vue开发工具的使用(这个需要在浏览器中安装) 2.初始Vue 2.1 .基础知识 2.1 .代码实例 2.2 .页 ...
- (Vue)vue模板语法
Vue.js 使用了基于 HTML 的模版语法,允许开发者声明式地将 DOM 绑定至底层 Vue 实例的数据.Vue.js 的核心是一个允许你采用简洁的模板语法来声明式的将数据渲染进 DOM 的系统. ...
- Vue模板语法与常用指令
Vue.js 使用了基于 HTML 的模板语法,允许开发者声明式地将 DOM 绑定至底层 Vue 实例的数据.在底层的实现上,Vue 将模板编译成虚拟 DOM 渲染函数,结合相应系统,在应用状态改变时 ...
- Vue模板语法(二)
Vue基础模板语法 二 1. 样式绑定 1.1 class绑定 使用方式:v-bind:class="expression" expression的类型:字符 ...
- (32)Vue模板语法
模板语法 文本: <span>Message: {{ msg }}</span> v-once 一次性地插值,当数据改变时,插值处的内容不会更新 <span v-once ...
随机推荐
- Android开发之漫漫长途 XIII——Fragment最佳实践
该文章是一个系列文章,是本人在Android开发的漫漫长途上的一点感想和记录,我会尽量按照先易后难的顺序进行编写该系列.该系列引用了<Android开发艺术探索>以及<深入理解And ...
- AI_深度学习概论
什么是是神经网络? 假如有6间房屋的数据集,已知房子的面积,单位是平方米或平方英尺,已知房子的价格.如果通过这6间房子的价格和房子的面积,预测房子的价格,首先要建立起一个数据模型 ,x轴为价格,y轴为 ...
- sqlserver存储过程及mybatis调用——待续
创建带输入参数存储过程 use yanantestgoif exists (select * from sys.objects where name='yanan')drop procedure ya ...
- Mysql的主从配置
前言:这次学习分布式的思想要配置mysql的主从复制和读写分离,我在主从配置上踩到很多坑,在此演示一遍配置过程,并附上问题的说明和自己的一些见解 Mysql主从复制的原理 附上原理图: mysql的主 ...
- hibernate 常用主键生成策略与配置
<id name="id" column="id"> <generator class="assigned" /> ...
- Eclipse使用EGit,commit之后仍显示NO HEAD的解决方法
由于以前做的项目一直用的都是svn,想试一下git尝尝鲜,遇见点问题.记录下来防止以后再出现这种情况,同时希望能帮助到和我一样的初学者. 问题描述: 右键项目-->team-->commi ...
- C之多线程(例子很不错)
1.线程 线程池是一个树状结构. 多线程解决并发问题. 一个线程内部的执行顺序是线性的.而线程之间是乱序的. 若要创建一个多线程程序,它的参数必须是空指针类型. 变色龙程序: #define _CRT ...
- Chrome浏览器调试Android的Webview
chrome://inspect Android:4.4+ Chrome 30+ 首次使用需要FQ
- JAVA设计模式---命令模式
1.定义: 将“请求”封装成对象,以便使用不同的请求.队列或者日志来参数化其他对象,命令模式也支持可撤销的操作.命令可以用来实现日志和事务系统. 2.实例: 1)需求:设计一个家电遥控器的API,遥控 ...
- Spring源码情操陶冶-PropertyPlaceholderBeanDefinitionParser注解配置解析器
本文针对spring配置的context:property-placeholder作下简单的分析,承接前文Spring源码情操陶冶-自定义节点的解析 spring配置文件应用 <context: ...