模板语法
Vue模板语法包括两大类
1、插值语法
功能:用于解析标签体内容
写法:{{xxx}}
,xxx 是 js 表达式
,可以直接读取到 data 中的所有区域
2、指令语法
功能:用于解析标签(包括:标签属性、标签体内容、绑定事件…)
举例:<a v-bind:href="xxx">
或简写为<a :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 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
| <!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title>模板语法</title> <script type="text/javascript" src="../js/vue.js"></script> </head> <body> <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> </body>
<script type="text/javascript"> Vue.config.productionTip = false;
new Vue({ el: "#root", data: { name: "小蒲", tencent: { name: "开端", url: "https://v.qq.com/x/cover/mzc00200mp8vo9b/n0041aa087e.html", }, }, }); </script> </html>
|

数据绑定
Vue
中有2种数据绑定
的方式
- 单向绑定
v-bind
数据只能从 data
流向页面
- 双向绑定
v-model
数据不仅能从 data 流向页面
,还可以从页面流向 data
备注
1、双向绑定一般都应用在表单类元素
上,如 <input>
<select>
<textarea>
等
2、v-model:value
可以简写为v-model
,因为v-model
默认收集的就是value
值
el和data 的两种写法
el
有2种
写法
- 创建
Vue
实例对象的时候配置el
属性
- 先创建
Vue
实例,随后再通过vm.$mount('#root')
指定el
的值
data
有2种
写法
- 对象式:
data: { }
- 函数式:
data() { return { } }
如何选择:目前哪种写法都可以,以后到组件时,data
必须使用函数,否则会报错
一个重要的原则。
由Vue
管理的函数,一定不要写箭头函数
,否则 this
就不再是Vue实例
了。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
| <!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title>el与data的两种写法</title> <script type="text/javascript" src="../js/vue.js"></script> </head>
<body> <div id="root"> <h1>你好,{{name}}</h1> </div> </body>
<script type="text/javascript"> Vue.config.productionTip = false;
new Vue({ el: "#root",
data() { console.log("@@@", this); return { name: "小蒲", }; }, }); </script> </html>
|