重要!小凯记账 (2.0) Vue.router使用小结

133 阅读1分钟

本文章总结Vue.router在项目中的使用。


首先,直接拿出Vue.router文档:router.vuejs.org/zh/


Chaper1. 先说几个编程式导航,用于js/ts中:

一、router.push

this.$router.push("/src/path/")  	//参数为字符串
//*******
const userId = '123'
this.$router.push({ name: 'user', params: { userId }}) // -> /user/123
this.$router.push({ path: `/user/${userId}` }) // -> /user/123

这个方法会向 history 栈添加一个新的记录,所以,当用户点击浏览器后退按钮时,则回到之前的 URL。

二、router.replace

用法和上面相同,唯一的不同就是,它不会向 history 添加新记录,而是跟它的方法名一样 —— 替换掉当前的 history 记录。

三、router.go(n)

这个方法的参数是一个整数,意思是在 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)

Chaper2. 标签的使用<router-link>

  1. 用于支持用户在具有路由功能的应用中 (点击) 导航。
  2. 通过 to 属性指定目标地址,默认渲染成带有正确链接的 <a> 标签,to后面的地址直接生成href后面的地址。
  3. 可以通过配置 tag 属性生成别的标签.。另外,当目标路由成功激活时,链接元素自动设置一个表示激活的 CSS 类名。

1.<router-link>默认渲染为一个<a>标签,假如我们想把<router-link>渲染成其他标签,可修改其属性tag:

<router-link to="/login" tag=“span”>登陆</router-link>

 <router-link to="/register">注册</router-link>

结果:

2.<router-link>和编程式的结合----后退按钮(源自csdn)

  <router-link to >    //要写一个空的to属性
       <button @click="$router.back(-1)">   //表示后退点击事件
            <Icon name="Cancel" />
       </button>
   </router-link> 

Continue...........