zoukankan      html  css  js  c++  java
  • vue生命周期

    beforeCreate

    实例初始化之后执行的钩子函数,在此时data、computed、watch、mehtods都还没有完成.

    我们可以在这里做loading显示

    created

    实例创建完成,此时data、computed、watch、mehtods、props都已经完成,但是dom还没有挂载,所以不能访问到$el(挂载点),$ref也还是空数组

    在这个阶段已经完成了数据注入(外部组件数据传入)和数据校验(检查组件内的数据是否有冲突),所以当前环境的数据是安全可靠的,我们可以在这里执行异步请求

    但是在该阶段页面还是空白,如果执行的请求信息较多,可能会造成页面白屏时间过长,要看具体情况使用

    beforeMount

    在组件挂载之前调用,这一步之前会找到对应的template,渲染成render.我们可以在页面展示前做最后的数据更改

     mounted

    组件挂载之后,我们可以访问到$el,可以使用$refs,可以执行dom操作了.这一步常用来获取dom节点和执行异步请求

    要注意的是,mouted不保证所有子组件也被挂载了,如果想要等到整个视图都渲染完毕,可以在该生命周期中使用this.$nextTick

    mounted: function () {
      this.$nextTick(function () {
        // Code that will run only after the
        // entire view has been rendered
      })
    }

    beforeUpdate

    响应数据更新之前调用发生在虚拟dom打补丁之前.注意的是组件第一次执行生命周期的时候并不会调用该函数.

    适合在更新之前访问现有dom,比如手动移除已添加的事件监听器;可以对更新的数据做最后更改和检测

    Updated

    组件更新完成后调用,可以获取最新的dom.在这里谨慎执行修改数据的操作,以免造成死循环

    beforeDestory

    实例销毁之前,我们可以在这里执行定时器销毁,解绑全局事件等操作

    destoryed

    实例销毁之后

    keep-alive

    keep-alive用于缓存组件,被keep-alive包裹的子组件不会在经历创建和销毁.keep-alive有2个生命周期

     

    activated:keep-alive(缓存组件,避免重新渲染)激活时调用

     

    deactivated:在keep-alive停用时调用

     

  • 相关阅读:
    Oracle 11g R2 常用配置与日志的文件位置
    DBA常用SQL之会话与等待事件
    SSH框架之Spring第三篇
    SSH框架之Spring第二篇
    SSH框架之Spring第一篇
    SSH框架之Struts2第三篇
    SSH框架之Struts2第一篇
    SSH框架之Struts2第二篇
    SSH框架之Hibernate第四篇
    SSH框架之Hibernate第三篇
  • 原文地址:https://www.cnblogs.com/liuXiaoDi/p/13056537.html
Copyright © 2011-2022 走看看