vue中 router 與 route區別

2022-08-29 21:06:20 字數 1684 閱讀 3846

vue-router中經常會操作的兩個物件\(route和\)router兩個。

1、$route物件

$route物件表示當前的路由資訊,包含了當前 url 解析得到的資訊。包含當前的路徑,引數,query物件等。

**1.$route.path**

字串,對應當前路由的路徑,總是解析為絕對路徑,如 "/foo/bar"。

**2.$route.params**

乙個 key/value 物件,包含了 動態片段 和 全匹配片段,

如果沒有路由引數,就是乙個空物件。

**3.$route.query**

乙個 key/value 物件,表示 url 查詢引數。

例如,對於路徑 /foo?user=1,則有 $route.query.user == 1,

如果沒有查詢引數,則是個空物件。

**4.$route.hash**

當前路由的 hash 值 (不帶 #) ,如果沒有 hash 值,則為空字串。錨點

**5.$route.fullpath**

完成解析後的 url,包含查詢引數和 hash 的完整路徑。

**6.$route.matched**

陣列,包含當前匹配的路徑中所包含的所有片段所對應的配置引數物件。

**7.$route.name 當前路徑名字**

**8.$route.meta 路由元資訊

route object 出現在多個地方:

router.beforeeach((to, from, next) => )
2、$router物件

$router物件是全域性路由的例項,是router構造方法的例項。

路由例項方法:

1、push

// 字串

this.$router.push('home')

// 物件

this.$router.push()

// 命名的路由

this.$router.push(})

// 帶查詢引數,變成 /register?plan=123

this.$router.push(})

push方法其實和是等同的。

注意:push方法的跳轉會向 history 棧新增乙個新的記錄,當我們點選瀏覽器的返回按鈕時可以看到之前的頁面。

2、go

// 頁面路由跳轉 前進或者後退

this.$router.go(-1) // 後退

3、replace

//push方法會向 history 棧新增乙個新的記錄,而replace方法是替換當前的頁面,

不會向 history 棧新增乙個新的記錄

05// 一般使用replace來做404頁面

this.$router.replace('/')

配置路由時path有時候會加 '/' 有時候不加,以'/'開頭的會被當作根路徑,就不會一直巢狀之前的路徑。

VUE中的路由router

vue router是vue.js官方的路由外掛程式,它和vue.js是深度整合的,適合用於構建單頁面應用。vue的單頁面應用是基於路由和元件的,路由用於設定訪問路徑,並將路徑和元件對映起來。傳統的頁面應用,是用一些超連結來實現頁面切換和跳轉的。在vue router單頁面應用中,則是路徑之間的切換...

vue中router的懶載入

import vue from vue import vuerouter from vue router import home from views home.vue import button from views button vue.use vuerouter const routes 大家...

Vue中如何重新整理router例項

我們常常會遇到這麼乙個需求,做乙個cms系統,許可權管理中,根據不同的角色許可權動態新增路由,然後新增了路由後如果退出使用者進行更換角色後,路由表的許可權分配並不完全如自己期望的那樣 why?通過查閱資料以及自己根據對vue的理解,因為router例項沒有進行重新整理,而vue router官方ap...