vue的生命钩子函数在使用Vue开发中是非常重要的一环,可以说,生命钩子函数使开发变得更加便捷。

下图是Vue的生命周期图:

具体钩子如下:

  • beforeCreate
  • created
  • beforeMount
  • mounted
  • beforeUpdate
  • updated
  • activated
  • deactivated
  • beforeDestroy
  • destroyed

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

beforeCreate: 正常不太会用到,处于Vue的第一个生命钩子,除非有一些特殊业务

created:在一个项目中,会常用于初始向服务端请求数据,并进行vue中的数据的赋值。

注意:不要在created中挂载任何和DOM有关系的内容,因为此时DOM还没有被渲染出来,会导致失败。

beforeMount:也是一个不常用到的钩子,位于vue替换el前,vue会根据实例中是否有模板去替换掉挂载的DOM。所有在此之前的DOM是否被替换。

mounted:常用于在dom渲染完毕,进行页面的各种处理。

beforeUpdate:是一个特殊的钩子,监听实例内数据发生变化时候触发。这里要注意不要在该钩子函数里做任何有关数据变化的操作,否则会进入死循环。

updated:数据更新完毕后重新渲染虚拟DOM,可用于处理重新渲染的DOM的操作。

activated:又是一个特殊的钩子,需要在模块中增加keep-alive标签包含内容才会有该钩子。keep-alive缓存不活动的组件实例,避免销毁重复渲染。所以此时的组件渲染完毕后,可以理解为激活未激活状态。activated进入激活状态时候的钩子。

 1 // 这是一个单文件组件。 code.Vue
2
3 <template>
4 <keep-alive>
5 <div class="s-canvas">
6 <canvas id="s-canvas" :width="contentWidth" :height="contentHeight">
7 </canvas>
8 </div>
9 </keep-alive>
10 </template>

deactivated:与上面相反。在组件失活时候调用,假如你在activated中做了绑定的操作,最好在这进行解绑,以免每次进入激活状态重复绑定,导致内存占用。

beforeDestroy:处于Vue实例销毁前的钩子。该钩子执行后,Vue会解除绑定,以及销毁所有的监听事件和字组件。

destroyed:整个实例销毁完毕后执行。

vue生命钩子函数的更多相关文章

  1. Vue的钩子函数[路由导航守卫、keep-alive、生命周期钩子]

    前言 说到Vue的钩子函数,可能很多人只停留在一些很简单常用的钩子(created,mounted),而且对于里面的区别,什么时候该用什么钩子,并没有仔细的去研究过,且Vue的生命周期在面试中也算是比 ...

  2. vue小白必看的生命钩子函数图解

    还有3个钩子并未出现在图上: 1.activated生命周期钩子函数在keep-alive 组件激活时调用,该钩子在服务器端渲染期间不被调用. 2.deactivated生命周期钩子函数在keep-a ...

  3. vue的钩子函数

    1.computed 计算属性 计算属性将被混入到 Vue 实例中.所有 getter 和 setter 的 this 上下文自动地绑定为 Vue 1..aPlus: { get: function ...

  4. vue - 过滤器-钩子函数路由

    一.关于路由 1.使用vue router 本质上是声明一种可以通过路径进行 挂子,用子 找到对应的 template 进行页面渲染 <!DOCTYPE html> <html la ...

  5. vue 生命钩子周期之理解

    对于vue的初学者来说,理解vue的生命钩子周期是很有必要的.什么是生命钩子周期呢,顾名思义就是 “实例初始化”  到  “实例被销毁” 的过程. 理解vue的生命钩子周期,我们就可以更好的在项目中运 ...

  6. vue中钩子函数的用法

    这么多钩子函数,我们怎么用呢,我想大家可能有这样的疑问吧,我也有,哈哈哈. beforecreate : 举个栗子:可以在这加个loading事件 created :在这结束loading,还做一些初 ...

  7. 生命周期(vue的钩子函数)

    生命周期图示 创建前,创建后,挂载前,挂载后,更新前,更新后,销毁前,销毁后 beforeCreate:function(){ console.log('1-beforeCreate 组件还未被创建' ...

  8. 【vue】钩子函数生命周期

    图1 图2: 图3 相关资料:http://www.zhimengzhe.com/Javascriptjiaocheng/236707.html    https://segmentfault.com ...

  9. 关于vue中钩子函数非常好的博客

    http://www.cnblogs.com/caimuqing/p/6728568.html

随机推荐

  1. SpringBoot框架:快速入门搭建运行一个应用程序(一)

    一.环境配置 Java环境:1.8版本 开发工具:IntelliJ IDEA 二.简单应用 1.创建项目 选择创建的项目类型为Spring Initializr,Project SDK选择1.8版本的 ...

  2. dpwwn-01靶机渗透

    dpwwn-01 主机发现+端口扫描 发现3306端口,80端口. 访问80端口,进行目录爆破,没有什么发现,主要点还是在数据库. 登录,没有密码. 进入数据库,查找敏感信息. 查看到ssh的用户,进 ...

  3. 读完这篇,让你真正理解Redis持久化

    什么叫持久化? 用一句话可以将持久化概括为:将数据(如内存中的对象)保存到可永久保存的存储设备中. 持久化的主要应用是将内存中的对象存储在数据库中,或者存储在磁盘文件中. XML 数据文件中等等. 也 ...

  4. ZooKeeper-3.5.6分布式锁

    原理 基本方案是基于ZooKeeper的临时节点与和watch机制.当要获取锁时在某个目录下创建一个临时节点,创建成功则表示获取锁成功,创建失败则表示获取锁失败,此时watch该临时节点,当该临时节点 ...

  5. Python-装饰器中保留被装饰函数元数据

     函数的元数据包括哪些呢? 1. 函数名 .__name__ 2. 函数注释 .__doc__ ... 那,如何保留被装饰函数元数据,通过wraps装饰器保留被装饰函数的元数据 import time ...

  6. DOS批处理中%cd%与%~dp0的区别详解

    转载:https://www.jb51.net/article/105325.htm DOS批处理中%cd%与%~dp0的区别详解     Windows下批处理中%cd%和%~dp0都能用来表示当前 ...

  7. python中np.arrange用法

    转载:https://www.cnblogs.com/ghllfl/p/8487692.html np.arange()经常用,其用法总结如下: np.arange(0,60,2) 生成从0到60的步 ...

  8. vue+elementUI实现 分页表格的单选或者多选、及禁止部分选择

    一.vue+elementUI实现 分页表格前的多选 多选效果图: 代码如下: <el-table ref="multipleTable" :data="listD ...

  9. ansible-playbook文件复用

    1. ansible-playbook文件复用  1.1) include 和 import区别  include(动态):在运行时导入 --list-tags,--list-tasks不会显示到输出 ...

  10. package.json文件配置说明

    1.什么是package.json package.json文件是Node.js项目中的一个描述文件,执行npm init命令初始化项目后,在项目的根目录下自动生成该文件.package.json包含 ...