Vue各生命周期详细介绍:beforeCreate(){}:Vue创建之前,这个阶段是实例初始化之后,这个指向创建的实例,数据观察,数据监听事件机制没有形成,无法获取DOM节点。无法访问数据、计算、监视和方法上的方法和数据。注意:日期和方法的数据还没有初始化。Created(){}:Vue创建完成后,这个阶段是实例初始化之后,完成data、props、computed的初始化和导入。注意:要在方法中调用方法,或者在数据中操作数据,最早只能在Created中操作可以在数据computedwatch方法上访问方法和数据,初始化完成后写入事件,DOM有在此阶段未安装。beforeMount(){}:Vue加载前,stage执行时,模板已经在内存中编译完成,但还没有挂载到页面(页面还是旧的)注:这个stage是过渡性的,一般是一个project只用一两次。Mounted(){}:Vue加载完成后,(完成vm.$el的创建,以及双向绑定);只要执行了mounted,就意味着整个Vue实例已经初始化完毕,此时组件已经离开创建阶段。进入运行阶段。beforeUpdate(){}:在Vue更新之前,执行beforeUpdate时,页面显示的数据还是旧的。此时date数据是最新的,页面还没有同步到最新数据。但是DOM中的数据会发生变化。这就是vue双向数据绑定的作用,可以在更新前访问已有的DOM,比如手动移除添加的事件监听器。updated(){}:Vue更新后,在Updated的执行过程中已经同步了数据,都是最新的,对虚拟DOM进行了重新渲染和打补丁。组件DOM已更新以执行依赖DOM操作。注意:不要在该函数中操作数据(修改属性),否则会陷入死循环。beforeUnmount(){}:(在Vue销毁之前,可以做一些删除提示,比如:你确定要删除**吗?)执行beforeDestroy时,Vue实例已经从运行阶段进入了销毁阶段。实例上的所有日期和方法以及过滤器和指令都可用,销毁过程尚未真正执行。unmounted(){}:Vue销毁后,执行销毁函数时,组件已经完全销毁(不留渣),此时组件中所有的数据,方法,指令,过滤器...都已经已被销毁(不再可用)。createApp.vue
Hello.vueHellokugou
importHellofrom"./components/Hello.vue";exportdefault{data(){return{message:'',};},方法:{getChildMsg:function(value){console.log(value);this.message=value}},组件:{Hello}}
Hello.vueHellokugou
{{counter}}
营销App.vue
Hello.vueHellokugou
{{counter}}