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.路由懒加载

vue基础回顾 router的更多相关文章

  1. 自定义指令 VUE基础回顾7

    vue除了有v-if等内置指令,我们也可以创建自定义指令. 例:我们可以实现一个可以每隔一秒闪烁的节点,类似于<blink>标签的行为.添加一个指令类似于添加一个过滤器,可以将他传入vue ...

  2. 一、VUE基础回顾1

    1.v-if和v-show v-if 和v-show都可以显示和隐藏元素: 区别:(1)v-if初始值为false那么这个元素不会被渲染 ,v-show不管初始值为何值都会被渲染 (2)v-if是控制 ...

  3. VUE基础回顾6

    1.ref ref可以直接访问元素,而不需要使用querySelector或者其他dom节点的原生方法. <div ref = "box"></div> 在 ...

  4. 动画 VUE基础回顾8

    过渡和动画 使用<transition> 组件包裹 例: <transition name="fade"> <div v-if="true& ...

  5. VUE基础回顾2

    1.响应式 vue修改了每个添加到data上的对象,当该对象发生变化时vue会收到通知,从而实现响应式.对象的每个属性都会被替换为getter,setter方法. 有两种方式实现data对象的监听 ( ...

  6. 从壹开始前后端分离 [ Vue2.0+.NET Core2.1] 十八║Vue基础: 指令(下)+计算属性+watch

    回顾 今天来晚辣,给公司做了一个小项目,一个瀑布流+动态视频控制的DEMO,有需要的可以联系我,公司的项目就不对外展示了(一个后端程序员真的要干前端了哈哈哈). 书接上文,昨天正式的开始了Vue的代码 ...

  7. 从壹开始前后端分离 [ Vue2.0+.NET Core2.1] 十九║Vue基础: 样式动态绑定+生命周期

    回顾 哈喽大家好,前后端分离系列文章又开始了,今天周一,还是感谢大家花时间来观看我写的博客,周末呢,没有写文章,但是也没有闲着,主要是研究了下遗留问题,看过之前文章的应该知道,之前的在AOP使用Red ...

  8. 2-5 vue基础语法

    一.vue基础语法 语法: {{msg}} html赋值: v-html="" 绑定属性: v-bind:id="" 使用表达式: {{ok? "ye ...

  9. vue基础总结

    Vue语法: new Vue({ //挂载: el: '#app', //初始化数据: data: {}, //监听 data 的数据变化: watch: { todos: { //深度监视 hand ...

随机推荐

  1. python与正则不得不说的故事

    今日所得 正则表达式 re模块 正则表达式:字符 元字符 匹配内容 . 匹配除换行符以外的任意字符 \w 匹配字母或数字或下划线 \s 匹配任意的空白符 \d 匹配数字 \n 匹配一个换行符 \t 匹 ...

  2. getline的使用

    函数定义: getline(istream &in, string &s) 作用: 在C++中用 string 类型进行终端输入字符串时,解决无法输入带有空格的字符串的问题. 功能: ...

  3. spring mvc +@Valid +@RequestBody 来做参数校验返回400,并且不显示具体message 如何解决

    参考文档: https://www.oschina.net/question/115867_2282711   谢谢原作者

  4. @RequestBody 参数为string正常改为对象时不报错但获取不到值

    @RequestBody 参数为string正常改为对象时不报错但获取不到值 试了好多办法都不行 最后 原因  jackson 包的版本号不匹配 2.9.0的不能封装进对象,可以运行且不报错但获取不到 ...

  5. Windows XP系列全下载(均为MSDN原版)

    正版windows xp sp3 下载大全(附:正版密钥) 微软MSDN Windows XP Professional下载 Windows XP Professional 简体中文 (最原始版本,无 ...

  6. Numpy入门(二):Numpy数组索引切片和运算

    在Numpy中建立了数组或者矩阵后,需要访问数组里的成员,改变元素,并对数组进行切分和计算. 索引和切片 Numpy数组的访问模式和python中的list相似,在多维的数组中使用, 进行区分: 在p ...

  7. React Native拆包及热更新方案 · Solartisan

    作者:solart 版权声明:本文图文为博主原创,转载请注明出处. 随着 React Native 的不断发展完善,越来越多的公司选择使用 React Native 替代 iOS/Android 进行 ...

  8. Spring Boot 学习1-创建Spring Boot应用

    如果使用Maven, 确保先安装好Maven再继续. 创建POM文件 在这里有两种方式: 继承Spring Boot parent的pom. 不继承. 继承Spring Boot pom 1 2 3 ...

  9. HTML中的<%%>是什么意思

    背景: 今天在nutzwk框架中看到这段代码. 在index.html界面 <% layout("/layouts/platform.html"){ %> <di ...

  10. webpack环境配置2

    1.webpack安装 Step 1: 首先安装Node.js, 在1中已经详细介绍了. Step2: 在Git或者cmd中输入下面这段代码, 通过全局先将webpack指令安装进电脑中npm ins ...