引用:https://www.cnblogs.com/dehuachenyunfei/p/11811969.html

引用:https://blog.csdn.net/xdnloveme/article/details/78035065

首先得先了解浏览器渲染过程:

  • 构建DOM树
  • 构建css规则树,根据执行顺序解析js文件。
  • 构建渲染树Render Tree
  • 渲染树布局layout
  • 渲染树绘制

vue的生命周期中的浏览器渲染:

以下为测试vue部分生命函数

beforeCreate(){console.log('beforecreate:',document.getElementById('first'))//nullconsole.log('data:',this.text);//undefinedthis.sayHello();//error:not a function
},
created(){console.log('create:',document.getElementById('first'))//nullconsole.log('data:',this.text);//this.textthis.sayHello();//this.sayHello()
},
beforeMount(){console.log('beforeMount:',document.getElementById('first'))//nullconsole.log('data:',this.text);//this.textthis.sayHello();//this.sayHello()
},
mounted(){console.log('mounted:',document.getElementById('first'))//<p></p>console.log('data:',this.text);//this.textthis.sayHello();//this.sayHello()
}

通过上述测试我们可以知道,

生命周期 是否获取dom节点 是否可以获取data 是否获取methods
beforeCreate
created
beforeMount
mounted

以我的个人理解,vue生命周期实际上和浏览器渲染过程是挂钩的,

在beforecreate阶段,对浏览器来说,整个渲染流程尚未开始或者说准备开始,对vue来说,实例尚未被初始化,data observer和 event/watcher也还未被调用,在此阶段,对data、methods或文档节点的调用现在无法得到正确的数据。

在created阶段,对浏览器来说,渲染整个HTML文档时,dom节点、css规则树与js文件被解析后,但是没有进入被浏览器render过程,上述资源是尚未挂载在页面上,也就是在vue生命周期中对应的created
阶段,实例已经被初始化,但是还没有挂载至$el上,所以我们无法获取到对应的节点,但是此时我们是可以获取到vue中data与methods中的数据的

在beforeMount阶段,实际上与created阶段类似,节点尚未挂载,但是依旧可以获取到data与methods中的数据。

在mounted阶段,对浏览器来说,已经完成了dom与css规则树的render,并完成对render tree进行了布局,而浏览器收到这一指令,调用渲染器的paint()在屏幕上显示,而对于vue来说,在mounted阶段,vue的template成功挂载在$el中,此时一个完整的页面已经能够显示在浏览器中,所以在这个阶段,即可以调用节点了(关于这一点,在笔者测试中,在mounted方法中打断点然后run,依旧能够在浏览器中看到整体的页面)。

vue的mouted和created在使用时的区别相关推荐

  1. JDBC:PreparedStatement与Statement在使用时的区别

    PreparedStatement与Statement在使用时的区别 1.Statement: a.写sql语句 b.然后再执行executeUpdate(sql)或executeQuery(sql) ...

  2. IEnumerable和IQueryable在使用时的区别

    最近在调研数据库查询时因使用IEnumerable进行Linq to entity的操作,造成数据库访问缓慢.此文讲述的便是IEnumerable和IQueryable的区别. 微软对IEnumera ...

  3. 移动硬盘和电脑内置硬盘使用时的区别

    读写速度:SATA3接口内置硬盘>USB3.0接口移动硬盘 对于台式机而言,内置硬盘转速更快.对于笔记本而言,两者转速相同.

  4. found 84 vulnerabilities (65 low, 7 moderate, 11 high, 1 critical) vue使用时提示有漏洞

    found 84 vulnerabilities (65 low, 7 moderate, 11 high, 1 critical)run `npm audit fix` to fix them, o ...

  5. 【VUE】数据绑定,js数组赋值,多处使用时,一处修改,另一处也会被改变

    vue中数据绑定,js数组赋值,多处使用时,一处修改,另一处也会被改变 问题描述如下: this.A = [1,2,3]var B = this.A B.push(4)var C = this.A c ...

  6. python中turtle怎么确定坐标_关于Python turtle库使用时坐标的确定方法

    关于Python turtle库使用时坐标的确定方法 想画一个比较复杂的图像,而且还想用turtle画,最让人想退却的是无规律的笔势和繁多的坐标,但既然没有按奈住冲动的心,那我告诉你一个比较笨的方法吧 ...

  7. 前端 重构时需要注意的事项_驾驶式扫地车的功能特点和使用时需要注意事项...

    扫地车 随着经济的发展,人们的生活水平不断提高,对生活环境的要求也越来越高,于是许多工厂.物业.超市.社区.市政单位等开始购买扫地车来进行路面清洁.一是清洗效果好,二是效率高,可以节省人工成本.扫地车 ...

  8. 有没搞错?Java 对象不使用时要赋值为 null?

    点击上方蓝色"方志朋",选择"设为星标"回复"666"获取独家整理的学习资料! 许多Java开发者都曾听说过"不使用的对象应手动赋 ...

  9. 主成分分析(Principle Component Analysis)PCA的核心思想是什么?PCA算法的优缺点?增量PCA模型, 随机PCA, 模型、 核化PCA分别是什么?使用时如何选择?

    主成分分析(Principle Component Analysis)PCA的核心思想是什么?增量PCA模型, 随机PCA, 模型. 核化PCA分别是什么?使用时如何选择? 主成分分析(Princip ...

最新文章

  1. JVM调优常用参数配置
  2. python123第九周测验答案2020_运用python123平台助力编程课教学
  3. python十进制小数转二进制_python十进制和二进制的转换 (含浮点数)
  4. 运维管理工具-- Deploy Assistant
  5. [导入]ASP.NET 配置节架构
  6. Storm精华问答 | 遇到这些错误日志该如何解决?
  7. 如何利用docker 构建golang线上部署环境
  8. SQL注入学习part04:(结合sqli-libs学习:31-40关)
  9. Fantastical 2如何编辑事件?
  10. 自动驾驶_AGV小车的工作原理及其导航方式简介
  11. 2D转换及相关案例实现
  12. java 取整符号_浅析java中的取整(/)和求余(%)
  13. http 301、302、304、400、405、415状态码解释
  14. 时间序列分析之预处理(一)
  15. R语言入门(17)-读写excel文件
  16. vue element el-date-picker绑定对象 v-model=‘xx.xx‘清空后数据还是显示
  17. 9月19日真实虾皮裁员经历...
  18. Substance Painter Essential Training Substance Painter基础教程 Lynda课程中文字幕
  19. python万年历源代码,python万年历实现代码 含运行结果
  20. 《err keytool 错误: java.io.IOException: Keystore was tampered with, or password was incorrect》

热门文章

  1. python爬取王者_python爬取王者荣耀APP英雄皮肤-Go语言中文社区
  2. 浅谈游戏服务器---功能模块上来看
  3. 如何量化一个csgo player
  4. 计算机组装与维护----第十二次作业
  5. 工厂模式运用-锻造武器
  6. 「兼容 M1」FabFilter Total Bundle for Mac - 音频处理插件包
  7. 面试笔记二(总结的答案可能有误,感谢批评指正)
  8. 想知道视频翻译软件哪个好用吗?答案在这里面
  9. vue路由跳转以及路由传参接收
  10. 上海师范大学计算机考研难度,上师大考研难吗