vue传值Vue让前端飞

个人对vue生命周期/钩子函数的理解

2017-08-01  本文已影响237人  喜隋成疾

对于实现页面逻辑交互等效果,我们必须知晓vue的生命周期,才能愉快的玩耍,知道我们写的东西应该挂载到哪里,vue官方给出的api讲解的那叫一个简单啊,如下:

所有的生命周期钩子自动绑定this上下文到实例中,因此你可以访问数据,对属性和方法进行运算。这意味着你不能使用箭头函数来定义一个生命周期方法(例如created: () => this.fetchTodos())。这是因为箭头函数绑定了父上下文,因此this与你期待的 Vue 实例不同,this.fetchTodos的行为未定义。

下面附加一张生命周期图示

那么接下来一个一个来,一起揭开生命周期以及钩子函数的神秘面纱

1、beforeCreated

在实例创建之前,数据还没有初始化,dom结构还没有挂载

2、created

实例已经创建完成之后被调用,完成了属性和方法的运算,初始化完毕,dom结构依然没有挂载

在这个钩子里面可以执行一些函数自调用和一些数据的初始化

3、beforeMount

在挂载开始之前被调用,初始化完毕,dom结构依然没有挂载

4、mounted

在挂载完成之后被调用,初始化完毕,dom结构已经挂载

在这个钩子里面可以进行一些数据的交互,dom结构的操作

5、beforeUpdate,updated

更新时调用  以及  更新完成时调用 这个放在一起来看,当然这里面我们添加一个事件,用来更改dom结构中的文字

但是在log中我们看到更新前和更新后的dom中的msg显示的都是更新后的数据,这里我不知道为什么,可能是更新之后beforeUpdate的数据又是更新前的数据了

以上是对钩子函数的个人理解,目前一直在用vue写东西,都是在自己一边探索一边写,一切都是源自对大前端的热爱和对Vue的热爱!!哈哈

上一篇下一篇

猜你喜欢

热点阅读