美文网首页
vue学习日记——生命周期

vue学习日记——生命周期

作者: 夜鸟丶 | 来源:发表于2018-04-10 17:54 被阅读0次

vue.js 中的生命周期包含三块:组件生命周期、路由生命周期、指令生命周期 。
所谓生命周期就是由一系列钩子函数组成的执行链,钩子函数,即特定时间段会执行的函数。

组件生命周期

image.png

如上图:
beforeCreate => created : data methods 开始初始化 ;
created : data , methods 初始化完成, el 为undifine;
created => beforeMount : 判断是否有 el 属性 没有就使用 $mount(el)挂载;有的话继续判断是否存在<template>标签,有的话编译标签元素并添加进render函数;没有的话将 el 元素外部看作被<template>标签包裹进行编译。
beforeMount : data , methods 初始化完成, el DOM结构生成,数据未挂载;
beforeMount =>mounted :创建vm.$el 取代 el;
mounted : data , methods 初始化完成, el DOM结构生成,数据已挂载;
mounted => beforeUpdate : 数据发生改变;
beforeUpdate : 数据更新,DOM 未变;
beforeUpdate => updated : 虚拟DOM 重新渲染,打补丁(很形象);
updated :数据更新,DOM 更新;
mounted => beforeDestroyed : 调用this.$distroy() ;
beforeDestroy:组件存在;
beforeDestroy =>destroyed : 清除所有事件监听,子组件;
destroyed : 组件不存在,this.$el //undifine .

路由生命周期

全局钩子:
beforeEach : 发生在跳转到导航界面之前,通常用来进行权限判断,next函数可以对跳转行为进行拦截;
afterEach : 在before之后,已确定即将跳转到目标页面,没有next函数,无法拦截;
组件钩子:
beforeRouteEnter : 发生在组件创建之前,通常在这里使用ajax进行页面所需数据的获取,再通过next将数据传递给data (在beforeCreate之前,next在mounted之后)
beforeRouteLeave : 发生在跳转到其他路由之前,可以在这里清除一些定时器或者阻止用户未保存页面修改就离开。(在beforeDestroy之前)

指令生命周期:

bind : 绑定到节点时执行 (created => beforeMount 期间)
inserted : 组件插入到DOM时执行 (beforeMount =>mounted 期间)
update : 指令传入值改变时执行
componentUpdate : 指令传入值改变后执行
unbind : 与节点解绑时执行 (beforeDestroy =>destroyed 期间)

相关文章

  • vue生命周期

    学习vue的生命周期 什么是生命周期函数? vue的生命周期函数(又称为钩子函数)是一个vue实例从开始创建,到初...

  • vue生命周期

    一 vue生命周期 Vue的生命周期:就是vue实例从创建到销毁的全过程 二 vue生命周期钩子 vue生命周期...

  • vue生命周期

    vue生命周期详: vue生命周期详解图: vue生命周期详解代码展示:

  • vue生命周期图(探究源码之路)

    学习主线:从vue2生命周期图出发,找出背后的源码实现,来探索vue成长之路! [TOC] 生命周期图 vue2....

  • Vue生命周期

    Vue生命周期详解 一、Vue生命周期 与 作用 (生命周期钩子就是生命周期函数) (1)Vue生命周期:每个Vu...

  • vue的生命周期

    vue生命周期学习 {{message}} var vm = new ...

  • vue学习日记——生命周期

    vue.js 中的生命周期包含三块:组件生命周期、路由生命周期、指令生命周期 。所谓生命周期就是由一系列钩子函数组...

  • vue3较vue2的特别之处 - 生命周期

    vue2 生命周期 vue3 生命周期 将 Vue2 的生命周期钩子代码更新到 Vue3 参考地址:https:/...

  • vuejs - (v-for、v-model、$event)-

    系统学习vuejs中的生命周期、循环性能、自定义组件思想、vue-cli、vue-loader(*.vue)...

  • 前端之路-VUE面试题

    vue生命周期面试题vue 生命周期是什么? Vue 实例从创建到销毁的过程,就是生命周期 beforeCreat...

网友评论

      本文标题:vue学习日记——生命周期

      本文链接:https://www.haomeiwen.com/subject/pyiqhftx.html