做网站必须有云虚拟主机微博推广怎么做
文章目录
- 1.模板语法
- 1.1 插值语法{{}}可以写什么
- 1.2 指令语法
- 1.2.1 指令概述
- 1.2.2 v-bind指令
- 1.2.3 v-model指令
1.模板语法
1.1 插值语法{{}}可以写什么
(1)在data中声明的
(2)常量
(3)合法的JavaScript表达式
(4)模板表达式都被放在沙盒中,只能访问全局变量的一个白名单,如 Math 和 Date
<body><div id="app"><!-- data中声明的 --><div>{{msg}}</div><div>{{age}}</div><!-- 常量 --><div>{{1313}}</div><!-- 合法的JavaScript表达式 --><div>{{1+1}}</div><!-- 模板表达式都被放在沙盒中,只能访问全局变量的一个白名单,如 Math 和 Date --><h1>{{Date.now()}}</h1></div><script>// 创建vue实例const myVue = new Vue({data: {age: 28,msg: 'agvc'},el: '#app'})// myVue.$mount('#app')</script>
</body>
1.2 指令语法
1.2.1 指令概述
(1)Vue框架中的所有指令的名字都以”v-“开始。指令的职责是,当表达式的值改变时,将其产生的连带影响,响应的作用于DOM
(2)Vue框架中的指令都是以HTML标签的属性形式存在的,指令对于浏览器是无法看懂的,需要先让Vue框架进行编译,编译之后浏览器才可以看懂。
<span 指令写在这里></span>
(3)指令的语法规则
<HTML标签 v-指令名:参数="表达式"></HTML标签>
①表达式:在插值语法在{{}}可以写的,在指令表达式都可以写(指令中不用加{{}})
②不是所有的指令都有参数和表达式,有的指令不需要参数也不需要表达式:如v-once。
v-once:只渲染元素一次,随后的重新渲染,元素及其所有的子元素将被视为静态内容并跳过,可以用于优化性能。
(4)什么时候使用插值语法,什么时候使用指令?
①凡是标签体当中的内容想要动态,需要使用插值语法
②想让HTML标签的属性动态,需要使用指令语法
1.2.2 v-bind指令
(1)v-bind指令是干嘛的?
它可以让HTML标签的某个属性的值产生动态的效果
(2)v-bind指令的语法格式:
<HTML标签 v-bind:参数="表达式"></HTML标签>
(3)v-bind指令的编译原理
①编译前:<HTML标签 v-bind:参数="表达式"></HTML标签>
②编译后:<HTML标签 参数="表达式"></HTML标签>
③注意两项:
a.在编译的时候v-bind后面的”参数名“会被编译为HTML标签的”属性名“
b.表达式会关联data,当data发生改变之后,表达式的执行结果就会发生变化。连带的就会产生动态效果
(3)由于 v-bind 指令在开发中使用频率非常高,因此,vue 官方为其提供了简写形式(简写为英文的 : )
1.2.3 v-model指令
v-bind和v-model的区别和联系
(1)v-bind和v-model这两个指令都可以完成数据绑定
(2)v-bind是单向数据绑定:data ==>视图
;v-model是双向数据绑定:data <==> 视图
(3)v-bind可以使用在任何HTML标签当中;v-model只能使用在表单元素上,例如:input标签、select标签。v-model有这个限制是因为只有表单类的元素才能给用户提供交互输入的界面
(4)v-bind和v-model都有简写方式:
①v-bind:参数="表达式"
简写为 :参数="表达式"
②v-model:value="表达式"
简写为 v-model="表达式"