摘要:在自己入門學(xué)習(xí)的筆記中也有提及第一種中我們通常采用將當(dāng)前選中的項(xiàng)目解除被選中的樣式為選中的條目添加被選中的樣式非常簡便,需要,并在中配置。但學(xué),還是用其本身的與綁定最好。第四種也是最官方,最簡單的。
當(dāng)我們新建一個(gè)網(wǎng)站時(shí),總是要做一個(gè)導(dǎo)航列表,在傳統(tǒng)的WEB開發(fā)中這已經(jīng)是一種很成熟的技術(shù),自己學(xué)VUE,看了官方文檔,加上自己摸索,也學(xué)到不少,現(xiàn)在拿來分享一下。在自己VUE入門學(xué)習(xí)的筆記中也有提及
第一種:JQUERY中我們通常采用:
$("li[class="active"]").removeClass("active"); //將當(dāng)前選中的項(xiàng)目解除被選中的樣式;
$(selector).addClass("active");//為選中的條目添加被選中的樣式;
非常簡便,需要npm install jquery,并在baseConfig中配置。但學(xué)VUE,還是用其本身的Class 與 Style 綁定最好。
第二種:VUE中沒有選擇器,但對于CSS屬性支持狀態(tài)關(guān)聯(lián)操作(Class 與 Style 綁定):
eg:v-bind:class="{ active: isActive }"
解讀:當(dāng)isActive值為真時(shí),active樣式有效,Dom渲染結(jié)果是:class=“active”
當(dāng)為false時(shí),active樣式無效,Dom渲染結(jié)果是:class=“”
因此我們可以利用這個(gè)屬性做文章
標(biāo)簽HTML:
data(){ return{ tagNames:[ {name:"hello",tabLink:"/Hello"}, {name:"Login",tabLink:"/Login"}, {name:"MyBlog",tabLink:"/MyBlog"} ], activeName:"hello" //當(dāng)activeName初始值為空時(shí),瀏覽器加載時(shí)默認(rèn)沒有選擇的列表項(xiàng),當(dāng)為hello時(shí),hello列表默認(rèn)被選中 } },
初看運(yùn)行起來還可以,切換也正常,但當(dāng)我們停留在非HELLO頁面時(shí),刷新頁面,hello被選中了,而刷新前的選中樣式被解除了,這是因?yàn)槲覀優(yōu)閍ctiveName:"hello" 賦了初值。所以有BUG。
第三種:思路同二,但activeName,我新建導(dǎo)航樣式列表組件時(shí),我為其定義了一個(gè)TITLE屬性
props: {
title: { type: String, default: "any" } }
并在列表中使用:class="{active:title== tabbarName.name}來綁定active CSS,
當(dāng)其他頁面調(diào)用這個(gè)組件時(shí),指定TITLE,比如: 、
這是當(dāng)切換到MyBlog時(shí),他就會被選中,隨便刷新,都沒有方法二的情況出現(xiàn)。
第四種:也是最官方,最簡單的。自己當(dāng)時(shí)看VUEROUTER,因?yàn)榭粗媸欤吹谋容^快,所以錯(cuò)過了這個(gè)知識點(diǎn),開始頁的最下面有這樣一句話:當(dāng)
然后
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/111878.html
摘要:由命名路由與子路由構(gòu)成整體結(jié)構(gòu),我們用它構(gòu)建如下頁面。以下兩張圖說明路由和子路由是如何工作的。繼續(xù)修改好友信息的路由部分添加好友信息為組件添加動(dòng)態(tài)路由為動(dòng)態(tài)路由添加為路徑參數(shù)添加數(shù)據(jù)下發(fā)為組件添加,并使用它。 不使用vue-router的情況 代碼官方給出下面的例子在不使用vue-router的情況下來實(shí)現(xiàn)一個(gè)路由。該示例結(jié)合了H5歷史管理API、單文件組件、JS模塊相關(guān)內(nèi)容來實(shí)現(xiàn)路由...
摘要:學(xué)習(xí)筆記狀態(tài)管理與狀態(tài)管理與非父子組件跨級組件和兄弟組件通信時(shí),使用了中央事件總線的一個(gè)方法,用來觸發(fā)和接收事件,進(jìn)一步起到通信的作用。倉庫包含了應(yīng)用的數(shù)據(jù)狀態(tài)和操作過程。新建文件,并寫入的配置,會依賴此配置文件來使用編譯代碼。 學(xué)習(xí)筆記:狀態(tài)管理與Vuex 狀態(tài)管理與Vuex 非父子組件(跨級組件和兄弟組件)通信時(shí),使用了bus(中央事件總線)的一個(gè)方法,用來觸發(fā)和接收事件,進(jìn)一步...
摘要:案例品牌列表構(gòu)建基本結(jié)構(gòu)利用的樣式數(shù)據(jù)要雙向更新,所以要用到,同時(shí)在后面的中要進(jìn)行初始化為添加按鈕綁定事件的中,綁定值為關(guān)鍵字刪除標(biāo)簽綁定函數(shù),傳入?yún)?shù)的時(shí)候,需要用括號事件修飾符,表示阻止默認(rèn)事件實(shí)例對象新建一個(gè)實(shí)例函數(shù)中初始化需要雙向 VUE案例 品牌列表 構(gòu)建基本結(jié)構(gòu) 利用bootstrap的樣式 showImg(https://segmentfault.com/img/bVbf...
摘要:調(diào)用全局的守衛(wèi)。在被激活的組件里調(diào)用。用創(chuàng)建好的實(shí)例調(diào)用守衛(wèi)中傳給的回調(diào)函數(shù)。 本文適用于對 Vue.js 和 vue-router 有一定程度了解的開發(fā)者除特殊說明,vue-router 版本為 3.0.2 正文 路由 class 匹配 路由匹配后會給該標(biāo)簽添加 class 屬性值 .router-link-active,該功能在嵌套路由中十分方便 class 的實(shí)際屬性值可以通...
摘要:而路由則是使用了中新增的事件和事件。總結(jié)這一章主要是介紹了如何使用在中構(gòu)建我們的前端路由。 系列目錄地址 一、基礎(chǔ)知識概覽 第一章 - 一些基礎(chǔ)概念(posted at 2018-10-31) 第二章 - 常見的指令的使用(posted at 2018-11-01) 第三章 - 事件修飾符的使用(posted at 2018-11-02) 第四章 - 頁面元素樣式的設(shè)定(posted a...
閱讀 2566·2021-11-22 13:53
閱讀 4068·2021-09-28 09:47
閱讀 858·2021-09-22 15:33
閱讀 808·2020-12-03 17:17
閱讀 3314·2019-08-30 13:13
閱讀 2120·2019-08-29 16:09
閱讀 1176·2019-08-29 12:24
閱讀 2452·2019-08-28 18:14