成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術(shù)文章
文章詳情頁

javascript - 底部組件,vue綁定class文字為什么不變色,如下代碼

瀏覽:118日期:2023-04-05 18:09:18

問題描述

javascript - 底部組件,vue綁定class文字為什么不變色,如下代碼

我把 data () {

return { isActive: ’a’}

},中的 ’a’,換成’b’,發(fā)表的字會變色

<template lang='html'> <p class='footer'>

<p class='footer-box'> <router-link : @click='select(’a’)' to='/' class='item'>首頁</router-link> <router-link : @click='select(’b’)' to='/create' class='item'>發(fā)表</router-link> <router-link : @click='select(’c’)' to='/message' class='item'>消息</router-link> <router-link : @click='select(’d’)' to='/user' class='item'>我的</router-link></p>

</p></template>

<script>export default { data () {

return { isActive: ’a’}

}, methods: {

select (value) { this.isActive = value}

}}</script>

<style lang='less'> .footer {

position: fixed;left: 0;bottom: 0;height: 50px;width: 100%;background-color: #fff;border-top: 1px solid #bbb;.footer-box { display: flex; height: 50px; width: 100%; line-height: 40px; .item { flex: 1; text-align: center; }}

} .active {

color: #41B883;

}</style>

問題解答

回答1:

你寫的太復(fù)雜了,這個(gè)完全可以在配置路由的時(shí)候?qū)懸粋€(gè)linkActiveClass搞定的,建議去看看vue-router的文檔配置可以寫在main.js定義路由里面const router = new VueRouter({

linkActiveClass: 'active', //設(shè)置點(diǎn)擊狀態(tài)的classmode: ’hash’,hashbang:true,routes:routerConfig

})

然后在你的.vue樣式里加上.active{color: #41B883;}的樣式就行了

router-link寫成這樣<router-link to='/' class='item'>首頁</router-link>

回答2:

換成@click.native應(yīng)該就行了,當(dāng)然樓上的方法更好

回答3:

將click事件換成@click.native='select(’a’)';寫這種導(dǎo)航時(shí),我通常是用這樣的方法,v-for <ul>

<li v-for='(item,index) in liData' : ><router-link :to='item.label'>{{item.name}}</router-link></li>

</ul> data(){

return { liData:[ {name:'首頁',label:'/home'}, {name:'設(shè)計(jì)器',label:'/designer'}, {name:'任務(wù)管理',label:'/taskmanger'}, {name:'節(jié)點(diǎn)管理',label:'/node'} ] },這里的active的變化就是根據(jù)地址欄中變化而變化,這樣前進(jìn)后退都不會有問題回答4:

<router-link :to='item.url' active- tag='li' exact> </router-link>

你可以定義選定后的樣式 .act-bar{}

回答5:

<p class='footer-box'> <router-link to='/'> 首頁 </router-link></p>

.router-link-active{ color: #41B883;}

直接這樣就行了在.router-link-active設(shè)置的顏色,就是你當(dāng)前點(diǎn)擊的router-link那一塊,激活后的樣式顏色,也可以設(shè)置其他樣式,然后其他的router-link,會恢復(fù)默認(rèn)的樣式

標(biāo)簽: JavaScript