vue實(shí)現(xiàn)tab欄點(diǎn)擊高亮效果
本文實(shí)例為大家分享了tab欄實(shí)現(xiàn)點(diǎn)擊高亮,供大家參考,具體內(nèi)容如下
之前面試的時(shí)候被問到過如何使用vue實(shí)現(xiàn)tab欄切換高亮,今天自己寫demo順便記錄一下

vue官方文檔里有一個(gè)基礎(chǔ)知識(shí)點(diǎn)叫做對(duì)象語法
<div v-bind:class='{ active: isActive, ’text-danger’: hasError }'></div>//data如下data: { isActive: true, hasError: false}//渲染結(jié)果為<div class='static active'></div>
個(gè)人覺得類似三元表達(dá)式,如果值為true則給該元素添加上指定的class
實(shí)際代碼如下
<template> <div> <!-- v-for循環(huán)渲染arr --> <!-- 把當(dāng)前點(diǎn)擊的name通過selected傳給data里的active --> <!-- 判斷如果active的值與當(dāng)前點(diǎn)擊的name相同 則給當(dāng)前點(diǎn)擊的div加上active樣式 --> <div v-for='(item,index) in arr' :key='index' @click = selected(item.name) : > {{item.name}} </div> </div></template><script>export default { name: 'index', data() { return { arr: [ { name: '娃哈哈' }, { name: '椰子汁' }, { name: '檸檬茶' }, { name: '可樂' }, { name: '雪碧' } ], active: '娃哈哈' }; }, methods: { selected(name){ this.active = name console.log(name) } }};</script><style>.active { background-color: orange; color: white;}#box { width: 100px; height: 100px; margin: 10px; float: left; border: 1px solid #000;}</style>
我是前端萌新一枚,剛接觸前端沒多久,vue接觸時(shí)間就更短了,每天進(jìn)步一點(diǎn)點(diǎn)!
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. IntelliJ IDEA導(dǎo)入jar包的方法2. 基于Java實(shí)現(xiàn)記事本功能3. docker鏡像完全卸載的操作步驟4. idea刪除項(xiàng)目的操作方法5. IntelliJ IDEA配置Tomcat服務(wù)器的方法6. IntelliJ IDEA設(shè)置自動(dòng)提示功能快捷鍵的方法7. idea打開多個(gè)窗口的操作方法8. 使用Maven 搭建 Spring MVC 本地部署Tomcat的詳細(xì)教程9. idea導(dǎo)入maven項(xiàng)目的方法10. IntelliJ IDEA設(shè)置默認(rèn)瀏覽器的方法

網(wǎng)公網(wǎng)安備