vue-router
1. 底层原理 hash 或者h5 histroy(有兼容性)
2. 使用的时候Vue需要引入VueRouter
Vue.use(VueRouter) //VueRouter 底层实际上是instal 安装了两个全局的组件 router-view 和router-link
默认路由:
 {
    path:'/',
    //component:Home //默认页
  //  redirect:'/home' 
    redirect:{name:'home'}  //也可以起一个名字
}
3. 路由跳转 
 <li><router-link :to="{path:'/home'}">首页</router-link></li>
 <li><router-link :to="{name:'home'}">首页</router-link></li> //name 会有兼容性问题
4. 一个路由想要加载多个组件
    ① 定义组件的时候采用路由的方式
    {
        name:'home',
        path:'/home',
    //  component:Home
        components:{
        default:Home,
        comp1:Comp1,
        comp2:Comp2
    }
    ② 引入组件Comp1 Comp2
    ③ 在组件显示的地方 添加 name属性
        <router-view name="comp1"></router-view>
        <router-view name="comp2"></router-view>
5. 二级路由
{
    path:'/user',
    component:User,
    children:[{
        path:'userAdd', //注意这里不要/,/代表根目录
        component:UserAdd
    },{
        path:'userList', //这里也可以这样写 /user/userList
        component:UserList
    }]
}
6. 路由钩子函数,不同的钩子之间会做什么
全局组件:
beforeEach(to,from,next):进入新的页面
beforeEnter 进入路由的配置当中
beforeRouteEnter(to,from,next) 单组件进入时
beforeRouteLeave(to,from,next) 单组件离开时
next(vm=>{}) 组件渲染完毕 会调用beforeRouteEnter钩子中 next中的回调函数
beforeResolve(to,from,next) 解析完成
afterEach(to,from,next) 当前进入完毕
7. 跳转页面 声明式跳转/编程式跳转
声明式跳转:<router-link :to="{path:'/home'}">首页</router-link>
编程式跳转 :this.$router.push("/user/userList"); 
8. 怎么取得路径的参数
路径传参
?id=1
{{this.$route.query.id}} 通过?路径参数
{{this.$route.params.id}} 通过路由
路由 path:'detail/:id'
<router-link to="user/detail/3">首页</router-link>
9.meta 路由校验用的
在 route.js中添加
 meta:{
        needLogin:true
    }
在路由钩子函数中通过to.matched去获取就能能到
let flag = to.matched.some(match=>match.meta && match.meta.needLogin === true)
可以校验
在路由钩子函数中to.matched 能狗获取到
4.路由懒加载

最新文章

  1. redis该如何分区-译文(原创)
  2. STL next_permutation和prev_permutation函数
  3. hibernate 超级牛x的公共类
  4. MyEclipse中无法将SVN检出来的项目部署到tomcat中
  5. Linux中MySQL5.5解压版普通用户安装
  6. What is HHVM?
  7. 史上最全的判断android,ios还是ipad访问,附上多种语言的实现方式
  8. 配置python+mod_wsgi+apache 时 在浏览器中访问服务器时报错:Invalid HTTP_HOST header: &#39;XXXXX&#39;. You may need to add u&#39;XXXXX&#39; to ALLOWED_HOSTS,在setting.py中添加‘*”无效的原因
  9. SAS SATA SSD基本介绍
  10. 理解Flexbox弹性盒子
  11. OJ:神秘的数组初始化
  12. Spark学习之路 (二)Spark2.3 HA集群的分布式安装
  13. 如何在 Azure 中自定义 Windows 虚拟机
  14. J4架构应用过程中出现的问题与解决摘录
  15. linux rsync同步工具
  16. Generator 知识点
  17. [学习笔记]SiftGPU入门
  18. 雷林鹏分享:Ruby 发送邮件 - SMATP
  19. openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 四
  20. w3c html dom

热门文章

  1. HLS图像处理总结(一)
  2. Transformer详解:各个特征维度分析推导
  3. VRRP笔记三:配置keepalived为实现haproxy高可用的双主模型配置文件示例:
  4. 数据分析交互工具jupyter notebook需要密码登陆解决办法
  5. 4 Values whose Sum is 0 (二分+排序)
  6. 12月18日风险投资速递:Facebook收购实时体育数据提供商Sport Stream
  7. mysql5.6和5.7的权限密码设置
  8. OSX安装Mysql8.0
  9. 海洋深处的数据中心——微软Natick项目
  10. 会员VS广告:陷入两难抉择的视频网站该如何自救