【vue-router】03 - 历史记录

257 阅读1分钟

1. <router-link> 默认保留路由历史记录

可以给 <router-link> 添加 replace 属性,实现不保留路由历史记录
<router-link replace to="/">登录</router-link>
<router-link replace to="/register" style="margin-left: 20px;">注册</router-link>

2. 编程式导航,一般用 router.push() 实现路由跳转,保留历史记录

可以用 router.replace(),实现不保留路由历史记录
const login = (str: string) => {
    router.replace({
        name: str
    })
}
const register = (str: string) => {
    router.replace({
        name: str
    })
}

3. 在保留历史记录的前提下,可以用 router.go(num)router.back() 来实现前进和后退

// 后退的回调
const prev = () => {
    // 不带参数,默认后退一个页面
    router.back()
}

// 前进的回调
const next = () => {
    // 一定要带参数 num,正整数表示前进 num 个页面,负整数表示后退 num 个页面
    // 不带参数默认不前进不后退,而且会刷新页面
    router.go(1)
}