vue到後面版本增長router.addRoutes的函數,使得能夠建立路由表,先上流程圖
vue
流程重點:在於跳轉頁面的時候 有沒有 動態路由
流程解說:服務器
- 進入網頁的時候,首先建立一部分靜態路由表,這份靜態路由表裏麪包含登陸頁面,這是保證輸入url的時候有頁面能夠訪問
- 登陸後,從服務器拉取登陸用戶的訪問權限的列表,保存到sessionstorage
- 在 router.beforeEach鉤子函數裏面 判斷有沒有 動態路由表(此函數是路由跳轉前運行的函數)
- 在鉤子函數裏面判斷有沒有動態路由表,有就進行頁面跳轉,沒有就建立動態路由表
- 假如sessionstorage裏面沒有存路由信息,則跳轉回登陸頁面從新登陸獲取路由信息
重點解說:session
- 從服務器拉取角色的路由表,本地存一份總路由表,在跟服務器拉取的路由表進行篩選,最後保存篩選事後的到sessionstorage
- 頁面每次跳轉的時候,判斷有沒有動態路由表,沒有的話去新建路由表
源碼:
函數
![圖片描述 圖片描述](http://static.javashuo.com/static/loading.gif)