1. 程式人生 > >vue(四)、vue router.push(),router.replace(),router.go()

vue(四)、vue router.push(),router.replace(),router.go()

1.router.push(location)=====window.history.pushState 想要導航到不同的 URL,則使用 router.push 方法。這個方法會向 history 棧新增一個新的記錄,所以,當用戶點選瀏覽器後退按鈕時,則回到之前的 URL。

// 字串
router.push('home')
 
// 物件
router.push({ path: 'home' })
 
// 命名的路由
router.push({ name: 'user', params: { userId: 123 }})
 
// 帶查詢引數,變成 /register?plan=private
router.push({ path: 'register', query: { plan: 'private' }})

2.router.replace(location)=====window.history.replaceState 跟 router.push 很像,唯一的不同就是,它不會向 history 新增新記錄,而是跟它的方法名一樣 —— 替換掉當前的 history 記錄

3.router.go(n)====window.history.go

// 在瀏覽器記錄中前進一步,等同於 history.forward()
router.go(1)
 
// 後退一步記錄,等同於 history.back()
router.go(-1)
 
// 前進 3 步記錄
router.go(3)
 
// 如果 history 記錄不夠用,那就默默地失敗唄
router.go(-100)
router.go(100)