vue2中请求应该在哪个生命周期发起

一个组件加载的时候生命周期的渲染顺序为:beforeCreate,created,beforeMount,mounted

如果一个父组件中引入了子组件,则父子组件的生命周期执行顺序为:父beforeCreate,父created,父beforeMount,子beforeCreate,子created,子beforeMount,子mounted父mounted

1.如果请求数据不需要考虑父子关系,那么在哪一个生命周期执行都是可以的,由于请求是异步函数会在同步函数的后面执行,所以在上面四个任何一个生命周期请求之后再对DOM元素进行处理,也是可以获取到DOM元素的。

2.如果请求方法单独封装之后放在methods中的,则不可以在beforCreate中进行this.方法名()的方式调用,此时this指向不正确,会报错。

3.如果父组件子组件对数据有顺序的要求,则可以根据加载父子生命周期加载顺序来合理安排放在哪个生命周期里。

常用的生命周期理解:

1.created,单组件请求数据

2.mounted,可同步进行DOM操作;如果有父子组件嵌套,子组件的请求结果要先于父组件的请求,则子组件的请求可以写在created中,父组件的请求写在mounted中

3.actived,该生命周期是组件使用了keep-alive;可进行性能优化。在该生命周期中判断当前的id和上一次进来的id是否相同,如果不同则发起新请求,否则不进行请求。

4.destroyed,可以在该生命周期中进行一些保存的请求,比如一个视频播放器的播放时长可以在该生命周期中发起请求进行存储,以便下次打开该组件时,播放时长接上原来的

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值