标签:布尔值 efault 比较 val gets 引号 return template base
v-bind的基本用法
<img v-bind:src="vHref" alt="">
用法一
和普通的类同时存在,并不冲突,普通类可以作为必备class存在
v-bind:class="{类名1:布尔值,类名2:布尔值}"
<div id='app'>
<h2 class="default" v-bind:class="{active:isActive,line:isLine}">{{message}}</h2>
</div>
<script>
const app = new Vue({
el:'#app',
data:{
message:'HelloVue',
isActive:true,
isLine:true
}
})
</script>
用法二
<div id='app'>
<h2 class="default" v-bind:class="getClass()">{{message}}</h2>
</div>
<script>
const app = new Vue({
el:'#app',
data:{
message:'HelloVue',
isActive:true,
isLine:true
},
methods:{
getClass:function () {
return {active:this.isActive,line:this.isLine}
}
}
})
</script>
(这种用法比较少,一般用对象语法)
用法一
<h2 class="default" :class="[active,line]">{{message}}</h2>
用法二
<div id='app'>
<h2 class="default" :class="getClass()">{{message}}</h2>
</div>
<script>
const app = new Vue({
el:'#app',
data:{
message:'HelloVue',
active:'classA',
line:'classB'
},
methods:{
getClass:function () {
return [this.active,this.line];
}
}
})
</script>
用法一
例如font-size || fontSize
<h2 :style="{key(属性名):value(属性值)}">{{message}}
<!-- 属性名写死的话要加引号 -->
<h2 :style="{fontSize:'30px'}">{{message}}</h2>
<h2 :style="{fontSize:finalNum+'px',backgroundColor:dataColor}">{{message}}</h2>
用法二
<div>
<h2 :style="getStyles()">{{message}}</h2>
</div>
<script>
const app = new Vue({
el:'#app',
data:{
message:'HelloVue',
final:'50px',
finalNum:50,
dataColor:'red',
},
methods:{
getStyles:function () {
return {fontSize:this.finalNum+'px',backgroundColor:this.dataColor}
}
}
})
</script>
方法
(这种用法比较少,一般用对象语法)
<div id="app">
<h2 :style="[baseStyle,baseStyle1]">{{message}}</h2>
</div>
<script>
const app = new Vue({
el:'#app',
data:{
message:'HelloVue',
baseStyle:{fontSize:'50px'},
baseStyle1:{backgroundColor:'red'},
}
})
</script>
但仍不建议中间加-,有可能出现不可预期的错误,最好小写字母
//这里以props为例
<cpn :new-message='message'></cpn>
<template>
<div>{{newMessage}}</div>
</template>
动态绑定style不能像绑定class一样做布尔判定,我们可以用三元运算符来动态显示style
//isActive为布尔值,activeColor为属性
activeStyle(){
return this.isActive ? {color:this.activeColor} : {}
}
标签:布尔值 efault 比较 val gets 引号 return template base
原文地址:https://www.cnblogs.com/lovecode3000/p/12323070.html