对于使用Vue实现页面的交互,我们必须要知道Vue从创建到销毁的整个生命周期,了解了Vue的生命周期,才知道我们编写的代码应该放在什么时候执行。
值得注意的是所有的生命周期钩子函数自动绑定this(也就是当前Vue对象)上,因此你可以在钩子函数中直接访问数据,属性和方法进行运算。
生命周期方法也就叫钩子函数。
特别说明:挂载完成就是页面渲染完成。
beforeCreate 官方说明:在实例初始化之后,数据观测(data observer) 和 event/watcher 事件配置之前被调用。解释:这个时期,this变量还不能使用,在data下的数据,和methods下的方法,watcher中的事件都不能获得到,页面也没挂载。 created 官方说明:实例已经创建完成之后被调用。在这一步,实例已完成以下的配置:数据观测(data observer),属性和方法的运算, watch/event 事件回调。然而,挂载阶段还没开始,$el 属性目前不可见。解释:这个时候可以操作vue实例中的数据和各种方法,但是还不能对"dom"节点进行操作; beforeMounte 官方说明:在挂载开始之前被调用:相关的 render 函数首次被调用。需要注意的是在这步,this.$el可以获得。但仅仅获得是dom节点,{{}}里的值并没有渲染,详见上图控制台图 mounted 官方说明:el被新创建的vm.$el替换,并挂载到实例上去之后调用该钩子函数;如果root实例挂载了一个文档内元素,当 mounted 被调用时 vm.$el 也在文档内。解释:这个时候挂载完毕,这时dom节点被渲染到文档内,一些需要dom的操作在此时才能正常进行