什么是Vue生命周期?一个Vue实例从创建阶段到销毁阶段的整个过程就是生命周期。具体来说就是从开始创建实例,到初始化数据,编译模板,将实例挂载到Dom上→渲染页面,更新数据→渲染页面,最后销毁等一系列过程,称为Vue生命周期Vue生命周期的作用?Vue生命周期中有很多函数叫做生命周期钩子,这使得我们在控制整个Vue实例的过程中更容易形成清晰的逻辑。当然,我们可以在这些函数中添加代码,让这段代码和hooks有关联,关联就是挂载,挂载就是在挂钩函数上挂一个逻辑代码,意思是一个任务例如:varvm=newVue({el:'#app',data:{message:'Instancemountcompleted'},mounted:function(){console.log(this.message)},updated(){console.log(this.message);}})vm.$watch('message',function(newValue,oldValue){console.log(`initialvalue:${oldValue}`);console.log(`updatedvalue:${newValue}`);})关于这个钩子函数,它的this指向在这个例子中,调用它的实例指的是vm。如果使用箭头函数:mounted:()=>console.log(this.message),会打印undefined,因为箭头函数没有this,而this被当成一个变量效果:vue生命周期有多少个阶段总共有吗?生命周期分为8个不同的阶段:beforeCreate/aftercreated,beforemounting(renderingpage)beforeMount/aftermounted,beforeupdate/afterupdate,beforedestroyingbeforereDestory/destoryed各阶段详细说明beforeCreate在实例初始化时调用,这个阶段的事件,数据观察还没有被初始化created在实例创建之后被调用,数据观察被初始化,但是实例还没有尚未挂载去DombeforeMount挂载前运行挂载的实例挂载到Dom完成页面渲染所有指令开始生效数据变化可以触发DOM更新beforeUpdate这个钩子会在每次实例变化时被调用(数据变化),但页面没有变化更新了这个Stage页面重新渲染beforeDestroy实例开始销毁时调用。该实例在被销毁的那一刻仍然有效。实例销毁后,所有指令和绑定的DOM都将失效。创建和挂载的区别。创建的舞台视图中的HTML尚未呈现。对html的dom节点进行操作,肯定是找不到元素的,所以要进行DOM操作,必须在挂载函数中进行。第一次加载页面时会触发哪些钩子?第一次加载时会触发beforeCreate、created、beforeMount、mounted这四个钩子函数
