vue router.push(),router.replace(),router.go()区别
程序员文章站
2022-03-29 08:34:06
...
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 记录中向前或者后退多少步,类似 window.history.go(n)
// 在浏览器记录中前进一步,等同于 history.forward()
router.go(1)
// 后退一步记录,等同于 history.back()
router.go(-1)
// 前进 3 步记录
router.go(3)
// 如果 history 记录不够用,那就默默地失败呗
router.go(-100)
router.go(100)
转载于:https://www.jianshu.com/p/5f8f230c93fe
上一篇: 彻底弄懂js中的this指向
推荐阅读
-
Vue中this.$router.replace和this.$router.push的区别
-
Vue this.$router.push、replace、go的区别
-
问题:在vue中this.$router.push怎么使用,query和params 有何区别?
-
vue router.push(),router.replace(),router.go()区别
-
vue-router报NavigationDuped错误,以及重写$router.push与$router.replace方法
-
Vue里点击按钮跳转页面,router.push router.replace router.go
-
vue router编程式导航$router.push()和$router.go()
-
vue router.push(),router.replace(),router.go(),router.back(),router. forward()
-
vue中的$router.replace;$router.go和$router.push的区别
-
Vue Router 之 router.push()、router.go()、router.replace() - Vue