Vue中router-link常用屬性使用案例講解
Vue中router-link常用屬性使用
在vue1.0版本的超鏈接標(biāo)簽還是原來(lái)的a標(biāo)簽,鏈接地址由v-link屬性控制
而vue2.0版本里超鏈接標(biāo)簽由a標(biāo)簽被替換成了router-link標(biāo)簽,但最終在頁(yè)面還是會(huì)被渲染成a標(biāo)簽的
至于為什么要把a(bǔ)換成router-link原因還是有的,比如我們之前一直慣用的nav導(dǎo)航里面結(jié)構(gòu)是(ul>li>a),router-link可以渲染為任何元素,這里可以直接渲染成li標(biāo)簽,同樣能實(shí)現(xiàn)跳轉(zhuǎn)效果,節(jié)省了a標(biāo)簽的使用,還有一個(gè)原因可能是因?yàn)閍標(biāo)簽正常是鏈接的跳轉(zhuǎn)的作用,點(diǎn)擊a時(shí)可能會(huì)重載頁(yè)面,使用router-link,此標(biāo)簽會(huì)被vue所監(jiān)聽(tīng),跳轉(zhuǎn)鏈接時(shí)就不會(huì)刷新頁(yè)面了。
router-link屬性
:to 屬性 相當(dāng)于a標(biāo)簽中的”herf”屬性,后面跟跳轉(zhuǎn)鏈接所用 <router-link :to="/home">Home</router-link> <!-- 渲染結(jié)果 --> <a href="/home" rel="external nofollow" >Home</a> replace屬性 replace在routre-link標(biāo)簽中添加后,頁(yè)面切換時(shí)不會(huì)留下歷史記錄 <router-link :to="/home" replace></router-link> tag屬性 具有tag屬性的router-link會(huì)被渲染成相應(yīng)的標(biāo)簽 <router-link :to="/home" tag="li">Home</router-link> <!-- 渲染結(jié)果 --> <li>Home</li> 此時(shí)頁(yè)面的li同樣會(huì)起到a鏈接跳轉(zhuǎn)的結(jié)果,vue會(huì)自動(dòng)為其綁定點(diǎn)擊事件,并跳轉(zhuǎn)頁(yè)面
active-class屬性 這個(gè)屬性是設(shè)置激活鏈接時(shí)class屬性,也就是當(dāng)前頁(yè)面所有與當(dāng)前地址所匹配的的鏈接都會(huì)被添加class屬性 <router-link :to="/home" active-class="u-link--Active">Home</router-link> active-class屬性的默認(rèn)值是router-link-active,所以如果沒(méi)有設(shè)置,就會(huì)被渲染為這個(gè)class 可以在router.Js里面設(shè)置 const router = new VueRouter({ mode: 'hash', linkActiveClass: 'u-link--Active', // 這是鏈接激活時(shí)的class }) exact屬性 開(kāi)啟router-link的嚴(yán)格模式 <router-link :to="/" exact>home</router-link> 上面這個(gè)標(biāo)簽如果不加exact屬性,則會(huì)在vue2.leenty.com/article頁(yè)面下也會(huì)被匹配到, 這卻不是我們的本意,在加了這個(gè)屬性后就會(huì)正確的匹配到vue2.leenty.com下
以上內(nèi)容就給大家介紹到這里,下面介紹下vue中的router-link屬性詳解
vue中的router-link屬性詳解
vue中的router-link屬性有以下屬性值:to相當(dāng)于herf標(biāo)簽用于添加跳轉(zhuǎn)內(nèi)容,replace用于頁(yè)面切換時(shí)不會(huì)留下歷史記錄以及tag將router-link渲染成相應(yīng)的標(biāo)簽等等
在vue中,vue.js與 vue-router 兩者結(jié)合在一起可以實(shí)現(xiàn)簡(jiǎn)單的單頁(yè)面應(yīng)用,其中<router-link>是一個(gè)組件,主要用于設(shè)置導(dǎo)航的鏈接來(lái)實(shí)現(xiàn)不同的HTML內(nèi)容切換。接下來(lái)在文章中將為大家具體介紹這一屬性,具有一定的參考價(jià)值,希望對(duì)大家有所幫助。
router-link標(biāo)簽
在vue1.0版本中的仍然用a標(biāo)簽來(lái)實(shí)現(xiàn)鏈接跳轉(zhuǎn)功能,但鏈接地址與html中不同,它是采用v-link屬性來(lái)控制。但是在2.0版本中a標(biāo)簽就被替換成了rount-link屬性,但是最終在頁(yè)面上顯示還是會(huì)被渲染成a標(biāo)簽。接下來(lái)將要詳細(xì)的介紹該屬性中的各個(gè)值的用法
router-link屬性值詳解
(1)":to" 屬性值
這個(gè)屬性值就相當(dāng)于a標(biāo)簽中的"herf"屬性,后面的內(nèi)容為跳轉(zhuǎn)鏈接的內(nèi)容
<router-link :to="http://chabaoo.cn/">腳本之家</router-link>
相當(dāng)于
<a href="http://chabaoo.cn/">腳本之家</a>
(2)"replace" 屬性值
replace屬性值在routre-link標(biāo)簽中添加的主要目的在于頁(yè)面切換時(shí)不會(huì)留下歷史記錄
<router-link :to="http://chabaoo.cn/" replace></router-link>
(3)"tag" 屬性值
具有tag屬性的router-link都會(huì)被渲染成相應(yīng)的標(biāo)簽
<router-link :to="http:///chabaoo.cn" tag="li">腳本之家</router-link>
相當(dāng)于
<li>腳本之家</li>
此時(shí)的頁(yè)面中的li同樣會(huì)起到a標(biāo)簽的作用,因?yàn)関ue會(huì)自動(dòng)為其綁定點(diǎn)擊事件,并跳轉(zhuǎn)頁(yè)面
(4)"active-class"屬性值
這個(gè)屬性是用于設(shè)置激活鏈接時(shí)class屬性,也就是當(dāng)前頁(yè)面及所有與當(dāng)前頁(yè)面地址所匹配的的鏈接都會(huì)被添加class屬性
<router-link :to="http://chabaoo.cn" active-class="u-link--Active">腳本之家</router-link>
active-class屬性的默認(rèn)值是router-link-active,所以如果沒(méi)有設(shè)置,就會(huì)被渲染為這個(gè)class
(5)“append”屬性值
設(shè)置 append 屬性后,則在當(dāng)前 (相對(duì)) 路徑前添加基路徑。例如,我們從 /a 導(dǎo)航到一個(gè)相對(duì)路徑 b,如果沒(méi)有配置 append,則路徑為 /b,如果配了,則為 /a/b
<router-link :to="{ path: 'relative/path'}" append></router-link>
使用router-link代替a標(biāo)簽的好處
router-link屬性在頁(yè)面中可以渲染為任何元素,比如上述代碼中渲染成li標(biāo)簽依然實(shí)現(xiàn)了跳轉(zhuǎn)效果。另外當(dāng)我們點(diǎn)擊a標(biāo)簽時(shí)可能會(huì)重載頁(yè)面,但是使用router-link后此標(biāo)簽會(huì)被vue所監(jiān)聽(tīng),跳轉(zhuǎn)鏈接時(shí)就不會(huì)刷新頁(yè)面了。
到此這篇關(guān)于Vue中router-link常用屬性-使用案例的文章就介紹到這了,更多相關(guān)Vue中router-link屬性內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
VUE路由動(dòng)態(tài)加載實(shí)例代碼講解
在本文里小編給大家整理了關(guān)于VUE路由動(dòng)態(tài)加載實(shí)例代碼以及相關(guān)知識(shí)點(diǎn),需要的朋友們學(xué)習(xí)下。2019-08-08Vue+Echart實(shí)現(xiàn)利用率表盤效果的示例代碼
這篇文章主要為大家詳細(xì)介紹了Vue如何利用Echart實(shí)現(xiàn)利用率表盤的效果,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,需要的可以參考一下2023-04-04建立和維護(hù)大型 Vue.js 項(xiàng)目的 10 個(gè)最佳實(shí)踐
這篇文章小編要與大家分享的是建立和維護(hù)大型 Vue.js 項(xiàng)目的 10 個(gè)最佳實(shí)踐,需要的小伙伴請(qǐng)和小編一起學(xué)習(xí)下面文章的具體內(nèi)容吧2021-09-09vue3動(dòng)態(tài)加載對(duì)話框的方法實(shí)例
對(duì)話框是很常用的組件,在很多地方都會(huì)用到,下面這篇文章主要給大家介紹了關(guān)于vue3動(dòng)態(tài)加載對(duì)話框的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-03-03Vue3監(jiān)聽(tīng)store中數(shù)據(jù)變化的三種方式
這篇文章給大家介紹了Vue3監(jiān)聽(tīng)store中數(shù)據(jù)變化的三種方法,使用watch和storeToRefs函數(shù),使用計(jì)算屬性computed和使用watchEffect函數(shù)這三種方法,文中通過(guò)代碼講解非常詳細(xì),需要的朋友可以參考下2024-01-01vue中的 $slot 獲取插槽的節(jié)點(diǎn)實(shí)例
今天小編就為大家分享一篇vue中的 $slot 獲取插槽的節(jié)點(diǎn)實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-11-11Vue實(shí)現(xiàn)頁(yè)面刷新跳轉(zhuǎn)到當(dāng)前頁(yè)面功能
在Vue.js應(yīng)用開(kāi)發(fā)中,有時(shí)候我們需要實(shí)現(xiàn)頁(yè)面的刷新或跳轉(zhuǎn)到當(dāng)前頁(yè)面的功能,這種需求在某些特定場(chǎng)景下非常有用,本文將詳細(xì)介紹如何在Vue中實(shí)現(xiàn)頁(yè)面刷新和跳轉(zhuǎn)到當(dāng)前頁(yè)面的功能,并提供多個(gè)示例和使用技巧,需要的朋友可以參考下2024-10-10Vue.js每天必學(xué)之計(jì)算屬性computed與$watch
Vue.js每天必學(xué)之計(jì)算屬性computed與$watch,為大家詳細(xì)講解計(jì)算屬性computed與$watch,感興趣的小伙伴們可以參考一下2016-09-09