模板语法
Vue模板语法有2大类:
1、插值语法;
功能:用于解析标签体内内容。
写法:{{xxx}},xxx是js表达式,且可以直接读取到data中的所有属性。
2、指令语法:
功能:用于解析标签(包括:标签属性、标签体内容、绑定事件......)。
举例:v-bind:href = "xxx" 或简写为 :href = "xxx",xxx同样要写js表达式,且可以直接读取到data中的所有属性。
备注:Vue中有很多的指令,且形式都是:v-????,此处我们只是拿v-bind举个例子。
举例:
<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<!-- 引入vue -->
<script type="text/javascript" src="../js/vue.js"></script>
<title>模板语法</title>
</head>
<body>
<div id="root">
<h1>插值语法</h1>
<h3>hello,{{name}}</h3>
<hr>
<h1>指令语法</h1>
<a v-bind:href="school.url">{{name}}去百度</a>
<a :href="school.url">{{name}}去百度</a>
<!-- 网址大写 -->
<a :href="school.url.toUpperCase()">{{school.name}}去百度</a>
</div>
<script>
// 创建Vue实例
new Vue({
el:'#root',
data:{
name:'jack',
school:{
name:'Tom',
url:'https://www.baidu.com/'
}
}
})
</script>
</body>
</html>
数据绑定
Vue中有2种数据绑定的方式:
1、单向绑定(v-bind):数据只能从data流向页面。
2、双向绑定(v-model):数据不仅能从data流向页面,还可以从页面流向data。
备注:
1. 双向绑定一般应用在表单类元素上(如:input、select等)。
2. v-model:value 可以简写为 v-model,因为v-model默认收集的就是value值。
举例:
<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<title>数据绑定</title>
<script type="text/javascript" src="../js/vue.js"></script>
</head>
<body>
<div id="root">
<!-- 普通写法 -->
单向数据绑定:<input type="text" v-bind:value="user"><br>
双向数据绑定:<input type="text" v-model:value="user"><br><br>
<!-- 简写 -->
单向数据绑定:<input type="text" :value="user"><br>
双向数据绑定:<input type="text" v-model="user">
</div>
<h2 v-model:></h2>
<script>
new Vue({
el: '#root',
data: {
user: '请输入姓名',
}
})
</script>
</body>
</html>
第一个框输入:张三
第二个框输入:李四