vue 生命周期 Router个人总结

Vue生命周期:

  beforeCreate:组件实例刚被创建,组件属性计算之前,如data属性等。
create:组件实例创建完成,属性已经绑定,但dom还未生成,$el属性还不存在
beforeMount:开始挂载变异生成的HTML到对应位置时触发的钩子函数(模板编译/挂载之前)

mounted:模板编译/挂载之后(不保证组件已在document中)此时可以进行发送ajax请求获取数据的操作,进行数据初始化(mounted在整个实例生命内只执行一次)

BeforeUpdate:将编译好的html替换掉el属性所指向的dom对象或替换对应html标签里面的内容(组件更新之前)

Update:组件更新之后

BeforeDestory:组件销毁前调用

Destoryed:组件销毁后调用

Vue Router:

1.定义路由,每个路由应该映射一个组件

const routes=[

{path:’/foo’,component:Foo}

{path:’/bar’,component:Bar}

]

2.创建router实例,然后传入routes配置

const  router = new Router({routes,mode:”history”})

3.导航

   (1)声明式导航

        使用router-link组件来导航,默认会被渲染成一个a标签,通过传入to属性指定链接,当对应的路由匹配成功,将自动设置class属性值.router-link-active

         <router-view></router-view>

       路由出口,路由匹配到的组件将渲染在这里

  1. 编程式导航

   借助router的实例方法,通过编写代码来实现导航

  this.$router.push():使用push方法导航到不同的url,这个方法会向history栈添加一个新的记录,当用户点击浏览器后退按钮时,则回到之间的URL。

点击router-link  :to=”...”等同于router.push(...)

this.$router,push(location,onComplete?,onAbort)

 OnComplete:回调将会在导航成功完成(在所有的异步钩子被解析之后)的时候进行相应的调用

onAbort:回调将会在终止(导航到相同的路由,或在当前导航完成之前导航到另一个不同的路由)的时候进行相应的调用

location参数形式

  1. 字符串:router.push(‘home’)
  2. 对象:router.push({path:’home’})
  3. 命名的路由

传参数:router.push({name:’user’,params:{userId:123}})

获取参数:this.$route.params.userId

 

  1. 带查询参数,变成/register?plan=private

             传参数:router.push({path:’register’,query:{plan:’private’}})

获取参数:this.$route.query.plan

 

5.提供了path,params会被忽略

const userId=123

router.push({name:’user’,params:{userId}})    // =>  /user/123

router.push({path:`/user/${userId}`})          // =>  /user/123

这里的params不生效

router.push({path:’/user’,params:{${userId}})

    同样的规则适用于router-link 组件的to属性。                                                                                       

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值