解決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: '我是第二個' }, ] } }
假如是這樣的話那么下拉框就會默認顯示第一個字眼“wishing第一個”,然后你在點擊下拉框選擇第二個時也會改變成“我是第二個”
如果你不想有默認選中,并且一開始就顯示請選擇這樣的提示字眼,那么我們可以去看看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進行綁定,那么每次修改時就要修改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(標題的字體顏色)
最近我有人問我關(guān)于vant組件的nav-bar的標題顏色需要改但是不會,我去網(wǎng)上找了一下,發(fā)現(xiàn)都很復雜
然后我發(fā)現(xiàn)通過深度選擇器可以修改nav-bar的標題的字體顏色
代碼:
<template> <view> <demo-block title="基礎(chǔ)用法" class="reset"> <van-nav-bar title="標題" left-text="返回" right-text="按鈕" left-arrow @clickLeft="onClickLeft" @clickRight="onClickRight" id="reset"/> </demo-block> <demo-block title="高級用法"> <van-nav-bar title="標題" 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 進不來 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的標簽的類名,修改它的顏色即可.
以上這篇解決vant title-active-color與title-inactive-color不生效問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue3+vite多項目多模塊打包(基于vite-plugin-html插件)
這篇文章主要給大家介紹了關(guān)于vue3+vite基于vite-plugin-html插件實現(xiàn)多項目多模塊打包的相關(guān)資料,現(xiàn)在很多小伙伴都已經(jīng)使用Vite+Vue3開發(fā)項目了,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2023-07-07vue基礎(chǔ)ESLint?Prettier配置教程詳解
這篇文章主要介紹了vue基礎(chǔ)ESLint?Prettier配置教程詳解,本文使用VsCode?+?Vue?+?ESLint?+?Prettier?實現(xiàn)代碼格式規(guī)范?+?保存自動修復代碼js+vue2022-07-07vue將毫秒數(shù)轉(zhuǎn)化為正常日期格式的實例
今天小編就為大家分享一篇vue將毫秒數(shù)轉(zhuǎn)化為正常日期格式的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-09-09Vue-CLI 3.X 部署項目至生產(chǎn)服務(wù)器的方法
這篇文章主要介紹了Vue-CLI 3.X 部署項目至生產(chǎn)服務(wù)器的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-03-03Vue實現(xiàn)具備掃描和查看數(shù)據(jù)的二維碼
在我們生活中,二維碼的應(yīng)用越來越廣泛,特別是在移動互聯(lián)網(wǎng)的時代,二維碼成為了快速傳達信息的一種利器,本文我們就來看看如何在Vue框架下,實現(xiàn)一個具備掃描和查看數(shù)據(jù)的二維碼吧2023-05-05Vue Element前端應(yīng)用開發(fā)之根據(jù)ABP后端接口實現(xiàn)前端展示
本篇著重介紹基于ABP后端接口信息,實現(xiàn)對前端界面的開發(fā)工作。2021-05-05VUE+Element UI實現(xiàn)簡單的表格行內(nèi)編輯效果的示例的代碼
這篇文章主要介紹了VUE+Element UI實現(xiàn)簡單的表格行內(nèi)編輯效果的示例的代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-10-10