動態(tài)路由:
當(dāng)我們很多個頁面或者組件都要被很多次重復(fù)利用的時候,我們的路由都指向同一個組件,這時候從不同組件進(jìn)入一個"共用"的組件,并且還要傳參數(shù),渲染不同的數(shù)據(jù)
這就要用到動態(tài)路由跟路由傳參了!
首先我們來了解下router-link這個組件:
簡單來說,它是個導(dǎo)航器,利用to屬性導(dǎo)航到目標(biāo)組件,并且在渲染的時候會自動生成一個a標(biāo)簽,當(dāng)然官方也有說明,加個tag標(biāo)簽屬性就可以渲染不同的標(biāo)簽,可以瀏覽器端查看到
并且當(dāng)一個導(dǎo)航器被激活的時候,會自動加上一個css的激活樣式,可以全局在路由配置中設(shè)置linkActiveClass屬性,屬性名就是樣式css名,一般寫為active
現(xiàn)在基本了解了router-link,先講一下動態(tài)路由配置吧
我們在配置路由的時候,將目標(biāo)組件的路徑先配置好,如:
比如多個路由都要進(jìn)入List組件,這時候在配置路由路徑后加個:id(id可隨便取名,標(biāo)識),這個屬性id可以在$route.params.id
中獲取,例如:
當(dāng)前這個child組件要進(jìn)入,以上配置的id就等于on;這時候在List組件中打印出$route.params.id就可以得到這個屬性值on
這個時候,不同組件進(jìn)入同一目標(biāo)組件時就可以得到標(biāo)識跟備注了,也可以利用這個來傳遞一些正常的參數(shù)
接著往下看,帶參數(shù)的路由,跟獲取傳來的參數(shù)值
當(dāng)router-link被激活點擊時,會將當(dāng)前的to的值push到router對象當(dāng)中(路由棧),所以這個值可以是string也可以是obj
傳參數(shù)的時候,我們就寫成對象的形式,用到v-bind的js表達(dá)式
此時整個的理解可以為:我是child組件過來的,而且我還帶來了我的名字,我叫child
在List組件當(dāng)中去獲取這個參數(shù)值跟id的值
如果是不同的組件過來的,可以設(shè)置不同的id值,只要在目標(biāo)組件獲取屬性id的值就可以了,參數(shù)就利用query.屬性值來獲取。
總結(jié)
以上所述是小編給大家介紹的vue動態(tài)路由配置及路由傳參的方式,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com