這句話:class="{active: activeName == gameName}"的activeName是data里面定義的一個變量 我想問的問題是這里為什么不用加if判斷而是直接比較兩個變量呢activeName == gameName?這是什么用法?新手求大家解釋一下
<div id="app">
<ul><div>選擇你最喜歡的愛好:</div>
<li class="collection-item"
v-for="gameName in gameNames"
:class="{active: activeName == gameName}"
@click="selected(gameName)">{{gameName}}
</li>
</ul>
</div>
new Vue({
el: "#app",
data: {
gameNames: ['看書', '聽歌', '游泳', '健身', '看電影','旅游'],
activeName: ''
},
methods: {
selected: function(gameName) {
this.activeName = gameName
}
}
})首先ul里最好不要嵌套div;
其次看了樓上的回答,我也學(xué)習(xí)了一下。vue實現(xiàn)數(shù)據(jù)綁定后 綁定的數(shù)據(jù)可以是 變量也可以是表達式、所以可以在:class中利用三目運算符直接判斷activeName的值是否等于gameName;
至于你說的if,是指v-if嗎?
關(guān)于 :class{active:flag}語法
綁定 HTML Class
對象語法
我們可以傳給?v-bind:class?一個對象,以動態(tài)地切換 class:
<div v-bind:class="{ active: isActive }"></div>
上面的語法表示?active?這個 class 存在與否將取決于數(shù)據(jù)屬性?isActive?的?truthiness。
你可以在對象中傳入更多屬性來動態(tài)切換多個 class。此外,v-bind:class?指令也可以與普通的 class 屬性共存。
北大青鳥APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
達內(nèi)教育集團成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機構(gòu),是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
北大課工場是北京大學(xué)校辦產(chǎn)業(yè)為響應(yīng)國家深化產(chǎn)教融合/校企合作的政策,積極推進“中國制造2025”,實現(xiàn)中華民族偉大復(fù)興的升級產(chǎn)業(yè)鏈。利用北京大學(xué)優(yōu)質(zhì)教育資源及背
博為峰,中國職業(yè)人才培訓(xùn)領(lǐng)域的先行者
曾工作于聯(lián)想擔(dān)任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔(dān)任項目經(jīng)理從事移動互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍懿科技有限責(zé)任公司從事總經(jīng)理職務(wù)負責(zé)iOS教學(xué)及管理工作。
浪潮集團項目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺面向?qū)ο箝_發(fā)經(jīng)驗,技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開發(fā)經(jīng)驗。曾經(jīng)歷任德國Software AG 技術(shù)顧問,美國Dachieve 系統(tǒng)架構(gòu)師,美國AngelEngineers Inc. 系統(tǒng)架構(gòu)師。