iT邦幫忙

0

vue vouter: router.afterEach()

  • 分享至 

  • xImage
  •  
router.afterEach((to, from) => {
  // 函式內寫程式碼
})

和beforeEach不同,afterEach不會在函式內return任何東西,也沒有next()

router.beforeEach((to, from) => {
  if (to.name === 'Dashboard' && !isLoggedIn()) {
    return { name: 'Login' }
  }
})

router.afterEach((to, from) => {
  console.log('afterEach 執行!')
})

假設有一段邏輯
「我要進入dashboard,但因無權限,被重新導向login頁」
它會這樣執行:

  1. 觸發router.beforeEach
  2. return { name: 'Login' },重新導向
  3. 再次觸發router.beforeEach,成功
  4. 觸發router.afterEach

上述邏輯,beforeEach共執行2次,afterEach只會執行1次


圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言