Vue中Mustache插值語(yǔ)法與v-bind指令詳解
一、Mustache插值語(yǔ)法
mustache 語(yǔ)法: 是"胡子"的意思, 據(jù)說(shuō)是因?yàn)榍度霕?biāo)記像胡子 {{}}(我覺(jué)得一點(diǎn)也不像哎O(∩_∩)O哈哈~)
把數(shù)據(jù)顯示到模板(template)中,使用最多的語(yǔ)法是 “Mustache”語(yǔ)法 (雙大括號(hào)) 的文本插值
- data返回的對(duì)象是有添加到Vue的響應(yīng)式系統(tǒng)中;
- 當(dāng)data中的數(shù)據(jù)發(fā)生改變時(shí),對(duì)應(yīng)的內(nèi)容也會(huì)發(fā)生更新。
- Mustache中不僅僅可以是data中的屬性,也可以是一個(gè)JavaScript的表達(dá)式
我們可以寫(xiě):
- 值
- 表達(dá)式
- 三元表達(dá)式
- 調(diào)用methods中函數(shù)
<div id="app">
<h2>{{message}}</h2>
<h2>當(dāng)前計(jì)數(shù):{{counter}}</h2>
<!-- 2.表達(dá)式 -->
<h2>計(jì)數(shù)雙倍:{{counter*2}}</h2>
<h2>展示的信息:{{info.split(" ")}}</h2>
<!-- 3.三元表達(dá)式 -->
<h2>{{age>=18?"成年人" : "未成年人"}}</h2>
<!-- 4.調(diào)用methods中函數(shù) -->
<h2>{{formatDate(time)}}</h2>
</div>二、v-bind的綁定屬性
2.1.v-bind綁定基本屬性
單向綁定v-bind:數(shù)據(jù)只能從data流向頁(yè)面
綁定屬性我們可以使用v-bind,比如動(dòng)態(tài)綁定a元素的href屬性、img元素的src屬性
v-bind用于
- 綁定一個(gè)或多個(gè)屬性值
- 向另一個(gè)組件傳遞props值**(props:相當(dāng)于一個(gè)組件的輸入,后面會(huì)學(xué)習(xí)到的)
v-bind:href 可以寫(xiě)為 :href 這就是v-bind的語(yǔ)法糖
<div id="app">
<!-- 1.綁定img的src屬性 -->
<button @click="switchImage">切換圖片</button>
<img v-bind:src="showImgUrl" alt="" />
<!--語(yǔ)法糖 v-bind: = : -->
<!-- 2.綁定a的href屬性 -->
<a v-bind:href="href" rel="external nofollow" >百度一下</a>
</div>2.2.v-bind綁定class
基本綁定class
<h2 :class="classes">Hello World</h2>
動(dòng)態(tài)class可以寫(xiě)對(duì)象語(yǔ)法
<button :class="isActive ? 'active':''" @click="btnClick"> 我是按鈕 </button>
對(duì)象語(yǔ)法的基本使用
<button :class="{active:isActive}" @click="btnclick">我是按鈕</button>對(duì)象語(yǔ)法的多個(gè)鍵值對(duì),動(dòng)態(tài)綁定的class是可以和普通的class同時(shí)的使用
- 我們可以給v-bind:class一個(gè)對(duì)象,用以動(dòng)態(tài)的切換class
- 當(dāng)然,v-bind:class也是可以與普通的class特性共存
<button class="abc cba" :class="getDynamicClasses" @click="btnClick"> 我是按鈕 </button>
2.3.v-bind綁定style
普通的html寫(xiě)法
<h2 style="color: aqua; font-size: 30px">hhh</h2>
style中的某些值,來(lái)自data中
動(dòng)態(tài)綁定style,在后面跟上對(duì)象類(lèi)型
<h2 v-bind:style="{color:fontColor,fontSize:fontSize}">hhhh</h2>動(dòng)態(tài)的綁定屬性,這個(gè)屬性是一個(gè)對(duì)象
<h2 :style="objStyle">hhhhh</h2>
2.4.v-bind綁定屬性名
綁定data中的屬性名
在屬性名不是固定的情況下使用:[屬性名]=“值”
<div id="app">
<h2 :[name]="aaaa">Hello World</h2>
</div>
<script src="../lib/vue.js"></script>
<script>
const app = Vue.createApp({
data: function () {
return {
name: "class",
};
},
});
app.mount("#app");
2.5.v-bind直接綁定對(duì)象
傳入一個(gè)對(duì)象,對(duì)象來(lái)自于data,一個(gè)對(duì)象的所有屬性,綁定到元素上的所有屬性
<div id="app">
<h2 :name="name" :age="age" :height="height">Hello world</h2>
<--直接綁定一個(gè)對(duì)象,一步到位-->
<h2 v-bind="infos"></h2>
</div>
<script src="../lib/vue.js"></script>
<script>
const app = Vue.createApp({
data: function () {
return {
infos: { name: "kk", age: 18, height: 1.7 },
name: "kk",
age: 18,
height: 1.7,
};
},
});
app.mount("#app");
總結(jié)
到此這篇關(guān)于Vue中Mustache插值語(yǔ)法與v-bind指令的文章就介紹到這了,更多相關(guān)Vue Mustache插值與v-bind指令內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Vue3?<script?setup?lang=“ts“>?的基本使用
<script setup>?是在單文件組件 (SFC) 中使用?composition api?的編譯時(shí)語(yǔ)法糖,本文主要講解<script setup>?與?TypeScript?的基本使用,感興趣的朋友跟隨小編一起看看吧2022-12-12
vue中關(guān)于$emit和$on的使用及說(shuō)明
這篇文章主要介紹了vue中關(guān)于$emit和$on的使用及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-10-10
Vue中.vue文件比main.js先執(zhí)行的問(wèn)題及解決
這篇文章主要介紹了Vue中.vue文件比main.js先執(zhí)行的問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-12-12
vue2中watch的用法(通俗易懂,簡(jiǎn)單明了)
這篇文章主要給大家介紹了關(guān)于vue2中watch用法的相關(guān)資料,通過(guò)watch監(jiān)聽(tīng)器,我們可以實(shí)時(shí)監(jiān)控?cái)?shù)據(jù)的變化,并且在數(shù)據(jù)發(fā)生改變時(shí)進(jìn)行相應(yīng)的操作,需要的朋友可以參考下2023-09-09
Vue實(shí)現(xiàn)一個(gè)返回頂部backToTop組件
本篇文章主要介紹了Vue實(shí)現(xiàn)一個(gè)返回頂部backToTop組件,可以實(shí)現(xiàn)回到頂部效果,具有一定的參考價(jià)值,有興趣的可以了解一下2017-07-07
vue中的 $slot 獲取插槽的節(jié)點(diǎn)實(shí)例
今天小編就為大家分享一篇vue中的 $slot 獲取插槽的節(jié)點(diǎn)實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-11-11

