admin-element-登陸

做了一個結合admin和abp原生的vue模板。

現在新增兩個登陸路由,假設爲學生和教師,都指向原本的登陸界面。

問題1:新增完路由後,發現手動輸入/student路由總是回到/login,

查看路由守衛後發現路由有白名單,在名單內的路由,無token時纔不會被重定向。

解決:在白名單中加入新增的路由

問題2:點擊登錄,成功後還是回到/login路由。

發現有token後,守衛還是會對路由名進行判斷,路由地址爲/login的會被指向路由/

解決:對這個判斷進行修改,添加教師、學生路由。

const whiteList = ['/login','/doctor','/nurse'] // 不重定向白名單
router.beforeEach((to, from, next) => {
  NProgress.start()
  if (window.abp.auth.getToken()) {
    // con
    if (whiteList.indexOf(to.path) !== -1) {
      next({ path: '/' })
      NProgress.done() // if current page is dashboard will not trigger	afterEach hook, so manually handle it
    } else {
      next()
    }
  } else {
    if (whiteList.indexOf(to.path) !== -1) {
      next()
    } else {
      next(`/login?redirect=${to.path}`) // 否則全部重定向到登錄頁
      NProgress.done()
    }
  }
})

router.afterEach(() => {
  NProgress.done() // 結束Progress
})

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章