zoukankan      html  css  js  c++  java
  • 面试题系列--【vue的生命周期】

    vue的生命周期

    vue实例从创建到销毁的过程就是vue的生命周期

    一共有八个生命周期

    1.beforeCreate

    1.创建之前:什么都是undefined
    
    2.实例初始化之后,this指向创建的实例,不能访问到data、computed、watch、methods上的方法和数据
    

    2.created

    1.创建完成:vue对象创建完成,但是挂载点还没找
    
    2.实例创建完成,可访问data、computed、watch、methods上的方法和数据,未挂载到DOM,不能访问到$el属性,$ref属性内容为空数组
    
    3.常用于简单的ajax请求,页面的初始化
    

    3.beforeMount

    1.如果有el,就会触发挂载期;如果没有,挂载期就不执行
    挂载之前:找到了要挂载的标签(el),但是指令、{{}}还没有解析
    
    2.在挂载开始之前被调用,beforeMount之前,会找到对应的template,并编译成render函数
    
    3.如果Vue没有template选项,那么就解析的是el对应的节点
    如果Vue有tempalte选项,那么解析的就是template,把template替换el
    

    4.mounted

    1.挂载完成:指令、{{}}解析完成,DOM节点加载完成
    2.操作DOM、打开计时器、一进到页面做数据交互、给document、window加事件
    
    3.实例挂载到DOM上,此时可以通过DOM API获取到DOM节点,$ref属性可以访问
    
    

    5.brforeUpdate

    数据变了,页面重新更新之前和更新之后取到的都是新值
    页面重新更新之前
    

    6.updated

    页面重新更新完成
    

    7.beforeDestory

    vm.$destroy() 触发,会引起销毁--
    销毁之前-善后工作 :清除计时器、清除document、window上的事件。
    

    8.destoryed

    销毁完成
    

    vue第一次页面加载会触发哪几个钩子函数?

    beforeCreate、created、beforeMount、mounted
    

    DOM 渲染在哪个周期中就已经完成?

    mounted
    
  • 相关阅读:
    彻底理解Hive中的锁
    Hive中的UDF详解
    如何让你的SQL运行得更快
    软件需求评审之五个案例和九条建议
    数据结构算法大全
    SQL Server CPU时间和占用时间及优化
    SQL Server datetime数据类型设计、优化误区
    SQL Server CASE语句中关于Null的处理
    UML分析设计顺序
    OO软件设计说明书结构
  • 原文地址:https://www.cnblogs.com/chenhaiyun/p/14883046.html
Copyright © 2011-2022 走看看