vue動態路由配置,vue路由傳參


動態路由:

  當我們很多個頁面或者組件都要被很多次重復利用的時候,我們的路由都指向同一個組件,這時候從不同組件進入一個"共用"的組件,並且還要傳參數,渲染不同的數據

  這就要用到動態路由跟路由傳參了!

首先我們來了解下router-link這個組件:

  簡單來說,它是個導航器,利用to屬性導航到目標組件,並且在渲染的時候會自動生成一個a標簽,當然官方也有說明,加個tag標簽屬性就可以渲染不同的標簽,可以瀏覽器端查看到

  並且當一個導航器被激活的時候,會自動加上一個css的激活樣式,可以全局在路由配置中設置linkActiveClass屬性,屬性名就是樣式css名,一般寫為active

  現在基本了解了router-link,先講一下動態路由配置吧

我們在配置路由的時候,將目標組件的路徑先配置好,如:

比如多個路由都要進入List組件,這時候在配置路由路徑后加個:id(id可隨便取名,標識),這個屬性id可以在$route.params.id中獲取,例如:

當前這個child組件要進入,以上配置的id就等於on;這時候在List組件中打印出$route.params.id就可以得到這個屬性值on

這個時候,不同組件進入同一目標組件時就可以得到標識跟備注了,也可以利用這個來傳遞一些正常的參數

接着往下看,帶參數的路由,跟獲取傳來的參數值

當router-link被激活點擊時,會將當前的to的值push到router對象當中(路由棧),所以這個值可以是string也可以是obj

傳參數的時候,我們就寫成對象的形式,用到v-bind的js表達式

此時整個的理解可以為:我是child組件過來的,而且我還帶來了我的名字,我叫child

在List組件當中去獲取這個參數值跟id的值

如果是不同的組件過來的,可以設置不同的id值,只要在目標組件獲取屬性id的值就可以了,參數就利用query.屬性值來獲取


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM