HTML:
<a href="#"></a>
JavaScript:
//location对象
window.location.href='url'//属性 有历史记录
window.location.assign('url')//方法 有历史记录
window.location.replace('url')//方法 无历史记录
//history对象
history.forword()//前进 不带参数
history.back()//后退 不带参数
history.go()//参数 1,2,3.. 前进1,2,3...条记录
//参数 -1,-2,-3... 后退1,2,3...条记录
Vue:(相当于HTML中用a标签来实现跳转)
<router-link to="/login"></router-link>
<router-link :to="{path:'',query:{}}"></router-link>
//接收数据
this.$route.query.item
<router-link :to="{name:'',params:{}}"></router-link>
//接收数据
this.$route.params.item
Vue编程式导航:(相当于JavaScript来实现跳转)
router.push()
// 字符串
this.$router.push('home')
// 对象
this.$router.push({ path: 'home' })
// 命名的路由
this.$router.push({ name: 'user', params: { userId: '123' }})
// 带查询参数,变成 /register?plan=private
this.$router.push({ path: 'register', query: { plan: 'private' }})
router.replace()
router.replace()和router.push()的使用方式相同,但是router.replace不会向history内添加历史记录
router.go()
router.go()方法相当于window.history.go方法,可以访问到指定的某条历史记录信息
router.go(-1)回到上一条历史记录
登录注册跳转问题