Vue.js中v-bind指令的用法介紹
一、什么是v-bind指令
v-bind指令用于響應更新HTML特性,允許將一個或多個屬性動態(tài)綁定到表達式。v-bind是應用在動態(tài)屬性上面的。
二、語法
v-bind語法如下:
v-bind:動態(tài)屬性名稱="變量"
也可以簡寫成下面的形式:
:動態(tài)屬性名稱="變量"
代碼示例如下:
<img :src="imgUrl" :title="title" />
這里的src和title都是<img>標簽的屬性,這里都是綁定到變量。
v-bind中還可以使用判斷,例如:
<img :src="flag?imgUrl:imgUrl2" />
這里表示如果flag變量的值為true,那么src屬性的值是變量imgUrl的值,否則src的屬性值就是變量imgUrl2對應的值。
注意:只要是HTML標簽的屬性都可以這樣去綁定屬性值。
三、在class屬性中使用v-bind指令
代碼示例如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>在class屬性中使用v-bind指令</title>
<!--引入vue.js-->
<script src="node_modules/vue/dist/vue.js" ></script>
<script>
window.onload=function(){
// 構(gòu)建vue實例
new Vue({
el:"#my",// el即element,表示掛載的元素,不能掛載在HTML和body元素上面
// data表示數(shù)據(jù),data中可以是各種數(shù)據(jù)格式
data:{
flag:true,
varStyle:"bindStyle", //值是樣式的名稱
style1:"colorStyle",
style2:"colorStyle2"
},
// 方法
methods:{
}
})
}
</script>
<style>
.colorStyle {
color: #ff6600;
}
.colorStyle2{
margin-top: 10px;
background-color: chartreuse;
border: 1px solid blue;
}
.bindStyle {
margin-top: 5px;
color: red;
}
.bindStyle2 {
margin-top: 5px;
color: red;
background-color: green;
}
</style>
</head>
<body>
<div id="my">
<!--單個樣式引用,這里是直接寫的data里面變量的名稱-->
<div :class="varStyle">這里是使用v-bind改變樣式</div>
<!--單個樣式引用,雙引號加單引號,單引號里面是樣式的名稱,這種方式可以不在data里面寫變量-->
<div :class="'bindStyle2'">直接引用樣式的名稱,不需要在data里面定義變量</div>
<!--多個樣式引用 使用數(shù)組的方式-->
<div :class="[style1,style2]">這里是同時使用多個樣式</div>
<!--條件判斷 格式:樣式名:判斷條件 注意:樣式名不能用變量-->
<div :class="{'colorStyle2':flag}">條件判斷</div>
<!--三目運算符 flag為真顯示style2變量對應的樣式,否則顯示style1變量對應的樣式-->
<div :class="flag?style2:style1">三目運算符</div>
</div>
</body>
</html>效果圖如下:

四、在style屬性中使用v-bind指令
代碼示例如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>style示例</title>
<!--引入vue.js-->
<script src="node_modules/vue/dist/vue.js" ></script>
<script>
window.onload=function(){
// 構(gòu)建vue實例
new Vue({
el:"#my",// el即element,表示掛載的元素,不能掛載在HTML和body元素上面
// data表示數(shù)據(jù),data中可以是各種數(shù)據(jù)格式
data:{
flag:true,//布爾型
style1:{background:'blue'},
style2:{color:'red'},
unify:"unifyStyle"
},
// 方法
methods:{
}
})
}
</script>
<style>
.unifyStyle{
margin-top: 10px;
}
</style>
</head>
<body>
<div id="my">
<!--直接寫內(nèi)聯(lián)樣式:要采用駝峰寫法,中間的-去掉-->
<div :style="{color:'#f60',fontSize:'20px',marginTop:'10px'}">
內(nèi)聯(lián)樣式
</div>
<!--單個引用-->
<div :style="style1" :class="unify">
單個引用
</div>
<!--多個樣式引用-->
<div :style="[style1,style2]" :class="unify">多個樣式引用</div>
<!--三目運算符-->
<div :style="flag?style1:style2" :class="unify">使用三目運算符進行判斷</div>
</div>
</body>
</html>效果圖如下:

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
關(guān)于Nuxt的五種渲染模式的差異和使用場景全解析
這篇文章主要介紹了關(guān)于Nuxt的五種渲染模式的差異和使用場景全解析,在過去傳統(tǒng)開發(fā)中,頁面渲染任務是由服務端完成的,那么Nuxt是如何渲染的呢,需要的朋友可以參考下2023-04-04
從Vue轉(zhuǎn)換看Webpack與Vite 代碼轉(zhuǎn)換機制差異詳解
這篇文章主要為大家介紹了從Vue轉(zhuǎn)換看Webpack與Vite代碼轉(zhuǎn)換機制差異詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-10-10
基于vue-cli3多頁面開發(fā)apicloud應用的教程詳解
這篇文章主要介紹了基于vue-cli3多頁面開發(fā)apicloud應用,本文采用vue-cli+APIcloud的方式寫解決以上痛點,開發(fā)靈活,并且打包之后體積更小速度更快,需要的朋友可以參考下2019-06-06
vue實現(xiàn)分環(huán)境打包步驟(給不同的環(huán)境配置相對應的打包命令)
這篇文章主要介紹了vue實現(xiàn)分環(huán)境打包步驟(給不同的環(huán)境配置相對應的打包命令),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-06-06

