博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
vue 路由基础
阅读量:6352 次
发布时间:2019-06-22

本文共 2546 字,大约阅读时间需要 8 分钟。

主要内容

1.动态路由匹配

2.嵌套路由

3.命名路由

4.命名视图

5.重定向

6.别名

7.编程式导航

在router 中显示为```const HospitalAdmin = () =>  import( /* webpackChunkName: "HospitalAdmin" */ '@/views/HospitalAdmin'){    path:'/about',    component: HospitalAdmin,}```这样写的原因是起到懒加载的作用。当使用这个模块的时候,才会加载```// which is lazy-loaded when the route is visited // this generates a separate chunk (HospitalAdmin.[hash].js) for this route//import()的作用,起到懒加载的作用。// /* webpackChunkName: "HospitalAdmin" */:在打包的时候起到标注的作用,打包的时候以(HospitalAdmin.[hash].js)的形式去打包```### 动态路由匹配```const Detail =() =>  import( /* webpackChunkName: "Detail" */ '@/views/Detail'){    path:'/detail/:id',    compotent:Detail}```### 嵌套路由```const Parent=() =>  import( /* webpackChunkName: "Parent" */ '@/views/Parent')    const Children=() =>  import( /* webpackChunkName: "Children" */ '@/views/Children'){    path:'/parent',    component:Parent,    children:[{        path:'children',        component:Children    }]}```### 命名路由```{    path:'/parent',    component:Parent,    name:'parent',    children:[{        path:'children',        name:'children',        component:Children    }]}
parent
```### 命名视图```
router.js{ path:'/box', components:{ default:()=>import ('@/views/demo1.vue'), item2:()=>import('@/views/demo2.vue'), item3:()=>import('@/views/demo3.vue') }, name:'box',}```### 重定向```{ path:'/main', redirect:to=>{ return { name:'home' } }}{ path:'/main', redirect:to=>{ return '/' }}{ path:'/main', redirect:to=>'/' }```### 别名```const Home=() => import( /* webpackChunkName: "Home" */ '@/views/Home'){ path:'/', alias:'home_page', component:Home}```### 编程式导航通过js 来控制跳转```demo.vuemethods:{ handleFun(){ //回退方法 this.$router.go(-1) this.$router.back() // 跳转指定页面 this.$router.push({ name:'home', query:{ name:'张三', age:'12' } }) } //or this.$router.push('/home') this.$router.replace({ name:'parent' })}```push 方法,在浏览器的历史记录中有记录,但是replace 方法,在浏览历史中,没有记录。#### 编程式导航加参数 3种写法``` this.$router.push({ name:'home', query:{ name:'张三', age:'12' } }) } // this.$router.push({ name:'home', params:{ name:'张三', age:'12' } }) } // let name='张三' this.$router.push({ path:`/home/${name}` }) :8080/home?name='张三'&age='12' :8080/home/张三/12 :8080/home/张三```复制代码

转载地址:http://komla.baihongyu.com/

你可能感兴趣的文章
LNMP环境安装(二)
查看>>
MFC对话框编程-图片控件
查看>>
nodejs启动webserver服务
查看>>
小偷被抓叫嚣:我不偷警察没饭吃
查看>>
python初学—-实现excel里面读数据进行排序
查看>>
用户体验升级后 “谁行谁上”让百度Q4财报更有底气
查看>>
直播相关学习链接
查看>>
使用RPM包工具和源码包编译安装Linux应用程序
查看>>
VoIP——开启免费通话新时代的先锋
查看>>
Linux下rsync的用法
查看>>
apache虚拟主机、日志轮询、日志统计、去版本优化
查看>>
java代码实现开启openoffice服务和关闭sffice.exe进程
查看>>
docker镜像的使用方法
查看>>
提升HTTPS安全评级
查看>>
iOS开发过程中的心得
查看>>
QOS配置命令
查看>>
linux安装搭建media-wiki
查看>>
使用 MPI for Python 并行化遗传算法
查看>>
widget
查看>>
paramiko安装及使用
查看>>