02-模板语法和数据绑定

模板语法

Vue 模板语法有2大类:

  • 插值语法:

    功能:用于解析标签体内容

    写法:,xxx 是 js表达式,且可以直接读取到data中的所有属性

  • 指令语法:

    功能:用于解析标签(包括:标签属性、标签体内容、绑定事件…..)

    举例:v-bind:href="xxx" 或简写为 :href="xxx",xxx 同样要写js表达式,且可以直接读取到 data 中的所有属性

    备注:Vue中有很多的指令,且形式都是 v-xxx,此处只是拿 v-bind 举例

代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<div id="root">
<h2>插值语法</h2>
<h4>你好,{{ name }}</h4>
<hr />
<h2>指令语法</h2>
<a v-bind:href="tencent.url.toUpperCase()" x="hello">点我去看{{ tencent.name }}1</a>
<a :href="tencent.url" x="hello">点我去看{{ tencent.name }}2</a>
</div>

<script type="text/javascript">
new Vue({
el: '#root',
data: {
name: 'jack',
tencent: {
name: '开端',
url: 'https://v.qq.com/x/cover/mzc00200mp8vo9b/n0041aa087e.html',
}
}
})
</script>

image-20220627113847858

数据绑定

Vue中有 2 种数据绑定的方式:

  • 单向绑定(v-bind):数据只能从 data 流向页面
  • 双向绑定(v-model):数据不仅能从 data 流向页面,还可以从页面流向 data

tips:

  1. 双向绑定一般都应用在表单类元素上(如:inputselect 等)
  2. v-model:value 可以简写为 v-model,因为 v-model 默认收集的就是 value 值

代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<div id="root">
<!-- 普通写法 单向数据绑定 -->
单向数据绑定:<input type="text" v-bind:value="name"><br/>
双向数据绑定:<input type="text" v-model:value="name"><br/>

<!-- 简写 v-model:value 可以简写为 v-model,因为v-model默认收集的就是value值-->
单向数据绑定:<input type="text" :value="name"><br/>
双向数据绑定:<input type="text" v-model="name"><br/>

<!-- 如下代码是错误的,因为 v-model 只能应用在表单类元素(输入类元素)上 -->
<!-- <h2 v-model:x="name">你好啊</h2-->
</div>

<script>
new Vue({
el:'#root',
data:{
name:'jack',
}
})
</script>

02-模板语法和数据绑定
https://flepeng.github.io/021-frontend-04-Vue-01-course-02-模板语法和数据绑定/
作者
Lepeng
发布于
2023年8月10日
许可协议