1、插值javascript
一、文本html
数据绑定最多见的形式是使用双大括号({{ }}——“Mustache”语法)的文本插值vue
<div class="mustache"> <span>小红:{{ juice }}</span> <span v-once>不变的选择:{{ juice1 }}</span> </div> juice: '奇异果', juice1: '百香果'
二、原始HTML:双大括号会将数据解释为普通文本,而非HTML代码;为了输出真正的HTML,能够使用v-html指令;java
<div> <p>mustache普通文本: {{ rawHtml }}</p> <p>使用v-html: <span v-html="rawHtml"></span></p> </div>
rawHtml: '<span style="color:lightblue">html输出,这里是蓝色的呦~</sapn>',
三、特性数组
“Mustache”语法不能用在HTML特性上,遇到这种状况应该使用 v-bind指令;ui
1)、v-bind使用方法:url
(1)动态的绑定一个或多个特性,,或一个组件prop到表达式;spa
(2)在绑定class或style特性时,支持其余类型的值,如数组或对象;3d
(3)在绑定prop时,prop必须在子组件中声明。能够用修饰符制定不一样的绑定类型;code
(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>
四、使用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; }
2、指令
指令是带有 v- 前缀的特殊属性。指令属性的预期值是单个Javascripit表达式。指令的职责是:当表达式的值改变时将其产生的连带影响,响应式的做用于DOM,
一、参数
一些指令可以接受一个参数,在指令名称以后以冒号表示,例如:
<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>
二、修饰符
修饰符是以半角句号 ‘.’指明的特殊后缀,用于指出一个指令应该以特殊方式绑定;后面详细介绍;
3、缩写
一、v-bind
<!-- 完整语法 -->
<a v-bind:href="url">...</a>
<!-- 缩写 -->
<a :href="url">...</a>
二、v-on
<!-- 完整语法 --> <a v-on:click="doSomething">...</a> <!-- 缩写 --> <a @click="doSomething">...</a>