vue-router(单页面应用控制中心)常见用法

  • 时间:2019-12-04 14:26 作者:Nice先生的狂想曲 来源: 阅读:835
  • 扫一扫,手机访问
摘要:前言vue router控制页面跳转,重点在于“升级视图但不重新请求页面”,并且拥有懒加载功能。推荐配置写法(开启页面跳转至组件,懒加载)export default new Router({ routes: [{ path: '/home', name: 'home', com

前言

vue-router控制页面跳转,重点在于“升级视图但不重新请求页面”,并且拥有懒加载功能。


推荐配置写法(开启页面跳转至组件,懒加载)

export default new Router({  routes: [{    path: '/home',    name: 'home',    component: () => import('home.vue') //懒加载  }]})

之后在App.vue中插入<router-view></router-view>既可。

事件跳转

在点击等事件触发时执行方法,另外假如需要传递参数,则可以在push方法中以query: { a: '111'}

  this.$router.push( { path: '/home' } ) // 该处path对应在配置中的路径

当然也可以用 链接 的方式进行跳转

<router-link to="/home"></router-link>
动态路由
export default new Router({  routes: [{    path: '/home/:id',//传参,当/后面接任何字符串均可    name: 'home',    component: () => import('home.vue')  }]})

另组件内获取参数的方法

<h1>{{ $route.params.id }}</h1>
嵌套路由

当你需要只改变布局中的一部分页面时

  routes: [{    path: '/home',    name: 'home',    component: () => import('home.vue')    children: [{      path: '/child',      component: () => import('child.vue')    }]  }]

之后在home.vue中插入<router-view></router-view>既可

push() 传递参数

在事件跳转中我们说到push方法中可以query: { a: '111'}进行参数传递

  this.$router.push( { path: '/home' , query: { a: '111'}} ) 

此外我们还能用params : { a: '111'}进行传参,但是注意此时push方法不再用path,而用name,否则会有错误!

  this.$router.push( { name: 'home' , params: { a: '111'}} ) 

事实上,vue-router的用法并不仅仅只有这些,并且他有自己的钩子函数,例如可以利用beforeEach记录跳转的路径,同时假如不加入next()方法则路由无法跳转,相似于 Generator 函数的驻点

router.beforeEach(to, from, next) => {  console.log(to.path)  next() }
  • 全部评论(0)
上一篇:MySQL InnoDB 事务
下一篇:Linux中的Kill命令
最新发布的资讯信息
【系统环境|】2FA验证器 验证码如何登录(2024-04-01 20:18)
【系统环境|】怎么做才能建设好外贸网站?(2023-12-20 10:05)
【系统环境|数据库】 潮玩宇宙游戏道具收集方法(2023-12-12 16:13)
【系统环境|】遥遥领先!青否数字人直播系统5.0发布,支持真人接管实时驱动!(2023-10-12 17:31)
【系统环境|服务器应用】克隆自己的数字人形象需要几步?(2023-09-20 17:13)
【系统环境|】Tiktok登录教程(2023-02-13 14:17)
【系统环境|】ZORRO佐罗软件安装教程及一键新机使用方法详细简介(2023-02-10 21:56)
【系统环境|】阿里云 centos 云盘扩容命令(2023-01-10 16:35)
【系统环境|】补单系统搭建补单源码搭建(2022-05-18 11:35)
【系统环境|服务器应用】高端显卡再度登上热搜,竟然是因为“断崖式”的降价(2022-04-12 19:47)
手机二维码手机访问领取大礼包
返回顶部