一、什么是生命周期?

我理解的生命周期就是:从出生到死亡的过程

二、生命周期有哪些?

Vue生命周期总共可以分为8个阶段:创建前后, 载入前后,更新前后,销毁前销毁后

生命周期 描述
beforCreate 组件实例被创建之前
Created 组件梳理被创建完成
beforMount 组件被挂载之前
Mounted 组件挂载完成
beforeUpdate 组件数据更新之前
Updated 件数据更新之完成
beforeDestroy 组件被销毁之前
Destroyed 组件被销毁完成

三、vue 生命周期的流程、理解与分析

  • 流程图

生命周期的理解分析

  1. new Vue() :表示开始创建一个Vue实例对象
  2. init() : 表示刚开始初始化一个vue空的实例对象 ,此时对象身上只有默认的生命周期函数和事件,其他的东西都没创建
  3. beforCreate:注意:在beforCreate生命周期函数执行时,data,methods都未被初始化
  4. Create: 在Create 中,data和methods都已经被初始化,之后才能调用,此时vm.$el,并没有被创建
  5. 判断是否存在el?若不存在则停止编译,直到调用vm.$mount(el)才会继续编译,优先级:render > template > outerHTML,vm.el获取到的是挂载DOM的
  6. beforMount: 在此阶段,可以获取到vm.el, 虽然已经完成Dom初始化,但并未挂载在el选项上
  7. mouted :vm.el已经完成DOM的挂载和渲染,此时打印vm.el,会发现之前的挂载点几内容已经被替换成新的DOM
  8. beforeUpdate:更新的数据必须是被渲染在模板上的实例被销毁前调用,此时实例属性与方法仍可访问,此时视图层还未更新,若在beforeUpdate中再次修改数据,不会再次触发更新方法
  9. update:完成视图层的更新 , 如若在update中再次修改数据,会再次触发更新方法(beforeUpdate、update)
  10. beforeDestroy :实例被销毁前调用,此时实例属性与方法仍可访问
  11. destroyed:完全销毁一个实例。可清理它与其它实例的连接,解绑它的全部指令及事件监听器
    并不能清除DOM,仅仅销毁实例

四、created和mounted这两个生命周期中请求数据的区别

created是在组件实例一旦创建完成的时候立刻调用,这时候页面dom节点并未生成mounted是在页面dom节点渲染完毕之后就立刻执行的触发时机上created是比mounted要更早的两者相同点:都能拿到实例对象的属性和方法讨论这个问题本质就是触发的时机,放在mounted请求有可能导致页面闪动(页面dom结构已经生成),但如果在页面加载前完成则不会出现此情况建议:放在create生命周期当中

ps:本文乃个人拙见,如有不当之处敬请各位看官提出宝贵意见,本人不胜感激

谈谈你对生命周期的理解?在created和mounted这两个生命周期中请求数据有什么区别呢?相关推荐

  1. [vue] vue在created和mounted这两个生命周期中请求数据有什么区别呢?

    [vue] vue在created和mounted这两个生命周期中请求数据有什么区别呢? 看实际情况,一般在 created(或beforeRouter) 里面就可以,如果涉及到需要页面加载完成之后的 ...

  2. 请描述下你对 Vue 生命周期的理解?在 created 和 mounted 这两个生命周期中请求数据有什么区别呢?

    Vue 生命周期总共可以分为8个阶段:初始化前后,挂载前后,更新前后,销毁前后,以及一些特殊场景的生命周期. 一.基本生命周期 生命周期 描述 beforeCreate 组件实例被创建之初 creat ...

  3. 堆栈(Strack)是指这样一段内存,它可以理解为一个筒结构,先放进筒中的数据被后放进筒中的数据“压住”,只有后放进筒中的数据都取出后,先放进去的数据才能被取出,称为“后进先出”。堆栈的长度可随意增加

    堆栈(Strack)是指这样一段内存,它可以理解为一个筒结构,先放进筒中的数据被后放进筒中的数据"压住",只有后放进筒中的数据都取出后,先放进去的数据才能被取出,称为"后 ...

  4. vue生命周期(created,mounted具体用于哪些场景)、三种存储的区别

    vue生命周期 什么是生命周期呢,就好像是人有生老病死一样,vue组件也有从创建到消亡的一系列过程.这个过程就叫做vue的生命周期 vue的生命周期可分为三大阶段,每个阶段都有对应的函数,叫做钩子,又 ...

  5. vue 生命周期 返回不触发_Vue生命周期activated之返回上一页不重新请求数据操作...

    activated: 英文原意:使活动.触发 在Vue的生命周期函数中,这个好像用的不是特别多?(也许只是在我的工作中这个用的不多,或者说叫几乎不用这个) 一.需求 前不久在项目中有这样一个需求: 在 ...

  6. jsonp react 获取返回值_谈谈对 React 新旧生命周期的理解

    前言 在写这篇文章的时候,React 已经出了 17.0.1 版本了,虽说还来讨论目前 React 新旧生命周期有点晚了,React 两个新生命周期虽然出了很久,但实际开发我却没有用过,因为 Reac ...

  7. 【vue其他相关】欢迎讨论!异步请求放在生命周期中的created还是mounted,已填坑

    文章目录 前言 两个生命周期 场景1 场景2 场景3 结论 如何处理场景一和场景二的问题 最后 前言 曾经在百度上搜这个问题,看到的答案都是相互复制粘贴的,而且个人觉得并没具体场景举例说明,并没有好的 ...

  8. 谈谈你对Activity生命周期的理解

    谈谈你对Activity生命周期的理解 首先,为什么Activity要有生命周期呢?我觉得这是移动设备的硬件特性和交互特性决定的. 首先从硬件上来说,移动设备不像是PC平台,它的CPU.内存.电量都受 ...

  9. vue声明周期_Vue生命周期的理解

    当面试官问:"谈谈你对vue的生命周期的理解",听到这句话你是不是心里暗自窃喜:这也太容易了吧,不就是beforeCreate.created.beforeMount.mounte ...

最新文章

  1. 算法解读 ---- 递归(一)
  2. boost::enable_current_exception用法测试程序
  3. python 解析xml 文件: SAX方式
  4. 如何识别哭泣csdn_如何让敏感的孩子,不再那么敏感?不是溺爱,而是懂得这些方法...
  5. z-index属性简介
  6. 快手内测10分钟长视频 以吸引更多MCN、用户入驻
  7. 页面中动态画有超连接的图
  8. 苹果Mac如何在全屏幕模式下使用 App?
  9. 微信小程序云开发教程-JavaScript入门(3)-数据类型
  10. cefsharp 二次开发
  11. 金蝶K3工业单据中间层插件开发教程
  12. 【我的OpenGL学习进阶之旅】学习OpenGL ES 3.0 的实战 Awsome Demo (上)
  13. 狂神 redis笔记 docker
  14. matlab连通区域统计,MATLAB bwlabel函数 统计连通区域
  15. 在Word中,如何删除页眉页脚
  16. B2C之淘宝商城,图穷匕见
  17. win7中USB音箱没有声音解决办法
  18. 2020最新版C/C++学习路线图--从C小白到C界精英
  19. Android行情走势图
  20. MicroNet实战:使用MicroNet实现图像分类(二)

热门文章

  1. 原来SqlSession只是个甩手掌柜
  2. 小美的代金券要过期啦(美团2021校招笔试+模拟栈)
  3. linux环境下ps命令行,Linux下ps命令详解
  4. Galaxy A系列新品亮相,看三星如何解决年轻消费痛点?
  5. 最新版本git下载安装配置教程
  6. AllJoyn:打造全球物联网的通用开
  7. WIN7怎么把暴风影视库去除?
  8. 微信小程序直播 ---微信官方组件简单使用
  9. 2.3 进制转换与运算符
  10. 《Adobe Illustrator CS5中文版经典教程》—第0课0.17节使用透视