路由:

  根据用户请求路径的不同返回不同的页面或者数据

前端路由

  前端路由不会经过服务器  根据hash值一个变化切换不同的页面  路由切换页面的时候页面是不会刷新的

  单页面开发:SPA

  后端路由  接口

在vue中使用插件的步骤

  1,引入Vue

  2,引入插件

  3,使用插件  Vue。use()

当路由配置成功以后Vue中就会多了两个内置组件

  <router-view></router-view>------当路径匹配成功以后  router-view用来显示对应的组件

  <router-link></router-link>

    1,做路由的跳转  必须要添加一个属性 to:跳转的路径

    2,初次之外 router-link身上还会有一个tag属性  指定router-link渲染成指定的标签

路由的配置

  mode:路由的形成  hash路由  history路由

  routes:【】每一个路由页面的配置项

  routes中的配置项

  path:“路径匹配的路径”

 

 component:当路径匹配成功需要渲染的组件

   redirect:重定向

  children:路由嵌套的配置项  这个属性和routes一样

 路由嵌套中path只需要写路径的名称即可

name:当前路由的名称

  props:路由解耦

 路由传值的方式

  一,动态路由

  流程:

  1,在定义路由的时候设置传递数据的key值  path:“/路由地址/:key1/key2”  key1 key2代表的数据的健值

  2,在做路由跳转的时候定义传递的数据  to=“/路由地址/参数1/参数2”

  3,在需要接收信息的组件内部通过this.$route.params进行接收

  二,query传值

  流程:

   1,通过query的方式进行数据的传参  key=val&key=val

  所谓的query传值其实就是我们常说的get传值的方式  通过?后面进行字符串拼接

  2,接收的时候通过this.$route.query进行接收

  三,路由解耦(只是适合动态路由传值)

  1,在定义路由的时候添加一个属性  props:true

  2,接收的时候只需要通过props进行接收即可

query传值 和 params传值的区别?
  前者的参数可穿不可传

  后者的参数是必须要传的

编程式导航

  路由跳转的方式

  1,a标签跳转  <a href="#/cinema>影院</a>

  2,组件router-link

  3,编程式导航 通过js进行路由的跳转

  this.$router.push   跳转

  thsi.$router.back  后退

  thsi.$router.forward  前进

  this.$router.replace    替换