解決vant title-active-color與title-inactive-color不生效問題
1、創(chuàng)建vue項目
2、使用vant組件
npm install vant --S
全局引用時在main.js引入
import Vant from 'vant'; import 'vant/lib/index.css'; Vue.use(Vant);
假如你引入之后發(fā)現(xiàn)頁面的樣式和組件都掛載了,但是console控制臺會報錯,說xxxx組件沒有register,這個時候很有可能是你的vant插件版本有問題,重新下載一個最新的vant就可以了,現(xiàn)在是2.6.0版本
好,接下來繼續(xù)
在需要使用下拉框的地方使用下拉框組件
<van-dropdown-menu>
<van-dropdown-item
v-model="value"
:options="developList"
/>
</van-dropdown-menu>
data () {
return {
value: ''
developList: [
{
value: '1',
text: '我是第一個'
},
{
value: '2',
text: '我是第二個'
},
]
}
}
假如是這樣的話那么下拉框就會默認(rèn)顯示第一個字眼“wishing第一個”,然后你在點擊下拉框選擇第二個時也會改變成“我是第二個”
如果你不想有默認(rèn)選中,并且一開始就顯示請選擇這樣的提示字眼,那么我們可以去看看vant的api文檔,發(fā)現(xiàn)有一個title的字眼,這個title就是下拉框的顯示文字,一開始很多人以為這個下拉框的title只是用來顯示然后點擊下拉框的item之后會自動綁定過的,但其實是錯誤的,以下就是一個很好的例子
<van-dropdown-menu>
<van-dropdown-item
title="請選擇"
v-model="value"
:disabled="disabled"
:options="developList"
/>
</van-dropdown-menu>
data () {
return {
value: ''
developList: [
{
value: '1',
text: '我是第一個'
},
{
value: '2',
text: '我是第二個'
},
]
}
}
你會發(fā)現(xiàn)請選擇的自然從來沒變過,無論你選擇了第一個還是第二個,那么你就會想title是不是綁定,接下來就有以下操作
<van-dropdown-menu>
<van-dropdown-item
:title="title"
v-model="value"
:disabled="disabled"
:options="developList"
/>
</van-dropdown-menu>
data () {
return {
value: ''
title:''請選擇,
developList: [
{
value: '1',
text: '我是第一個'
},
{
value: '2',
text: '我是第二個'
},
]
}
}
加下來發(fā)現(xiàn)還是沒有改動啊,那是不是綁定的值沒有發(fā)生改變了,好像是的,因為你值定義了這個title,這個title就是下拉框選擇的顯示,只是你沒有title的時候vant把你選擇的text文字映射到title上去了,
一旦你自己使用title進(jìn)行綁定,那么每次修改時就要修改title,查看vant api可以發(fā)現(xiàn)有change事件,接下來就可以操作了
<van-dropdown-menu>
<van-dropdown-item
:title="title"
v-model="value"
:options="developList"
@change="changeDevelop"
/>
</van-dropdown-menu>
data () {
return {
value: ''
title:''請選擇,
developList: [
{
value: '1',
text: '我是第一個'
},
{
value: '2',
text: '我是第二個'
},
]
}
},
methods: {
changeDevelop (i) {
this.title = this.developList[i-1].text
},
}
這就沒問題啦!
補充知識:簡單粗暴修改vant組件nav-bar的title(標(biāo)題的字體顏色)
最近我有人問我關(guān)于vant組件的nav-bar的標(biāo)題顏色需要改但是不會,我去網(wǎng)上找了一下,發(fā)現(xiàn)都很復(fù)雜
然后我發(fā)現(xiàn)通過深度選擇器可以修改nav-bar的標(biāo)題的字體顏色
代碼:
<template>
<view>
<demo-block title="基礎(chǔ)用法" class="reset">
<van-nav-bar title="標(biāo)題" left-text="返回" right-text="按鈕" left-arrow @clickLeft="onClickLeft" @clickRight="onClickRight" id="reset"/>
</demo-block>
<demo-block title="高級用法">
<van-nav-bar title="標(biāo)題" left-text="返回" left-arrow>
<van-icon name="search" slot="right" custom-class="icon" />
</van-nav-bar>
</demo-block>
</view>
</template>
<script>
import Page from '../../common/page';
export default {
data() {
return {
}
},
onLoad() {},
methods: {
onClickLeft() {
console.log("11");//TODO 進(jìn)不來
uni.showToast({
title: '點擊返回',
icon: 'none'
});
},
onClickRight() {
uni.showToast({
title: '點擊按鈕',
icon: 'none'
});
}
}
}
</script>
<style>
.icon {
color: #1989fa;
}
#reset /deep/ .van-ellipsis{
color: red !important;
}
</style>
效果:

解釋: 給組件定義個id,再通過這個深度選擇器獲取title的標(biāo)簽的類名,修改它的顏色即可.
以上這篇解決vant title-active-color與title-inactive-color不生效問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue2.0 使用element-ui里的upload組件實現(xiàn)圖片預(yù)覽效果方法
今天小編就為大家分享一篇vue2.0 使用element-ui里的upload組件實現(xiàn)圖片預(yù)覽效果方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-09-09
淺談vue 組件中的setInterval方法和window的不同
這篇文章主要介紹了淺談vue 組件中的setInterval方法和window的不同,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-07-07
vuejs+element UI table表格中實現(xiàn)禁用部分復(fù)選框的方法
今天小編就為大家分享一篇vuejs+element UI table表格中實現(xiàn)禁用部分復(fù)選框的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-09-09
Vue3中使用fetch實現(xiàn)數(shù)據(jù)請求的過程詳解
在現(xiàn)代前端開發(fā)中,數(shù)據(jù)請求是一個不可或缺的環(huán)節(jié),而在Vue3中,我們有許多方法可以進(jìn)行數(shù)據(jù)請求,其中使用fetch方法是一個非常常見的選擇,本文將詳細(xì)講解如何在Vue3中使用fetch來實現(xiàn)數(shù)據(jù)請求,需要的朋友可以參考下2024-09-09

