全局钩子函数:1.beforeCreate:Vue实例没有挂载el,没有生成dom,没有初始化数据,无法获取到data中的数据和methods中的方法;2.created:ueinstance没有挂载el,没有生成dom,data属性初始化成功。可以在methods中调用方法,在data中改变数据;至此,实例完成了以下配置:数据观察者、属性和方法的操作、watch/event事件回调。3.beforeMount:完成el和data的初始化。在模板编译之前,它仍然被{{message}}占用,因为此时它仍然挂在页面上,在JavaScript中仍然以虚拟DOM的形式存在。第一次调用相关render函数,服务端渲染时不调用该hook;4.mounted:模板编译,vue实例已经挂载到页面,el替换为新创建的vm.$el,挂载到实例上去后调用这个钩子。可以获取DOM元素并进行DOM操作;如果根实例在文档中挂载了一个元素,则在调用mounted时vm.$el也在文档中。服务器端渲染期间不会调用此挂钩。请注意,mounted并不保证所有子组件也一起安装。如果想等到整个视图渲染完成,可以将mounted换成vm.$nextTick:组件钩子函数:5.beforeUpdate:数据更新时调用,虚拟DOM打补丁前调用。这适用于在更新之前访问现有的DOM,例如手动移除添加的事件监听器。服务器端渲染时不会调用这个钩子,因为只有初始渲染会在服务器端完成。6.updated:虚拟DOM由于数据变化而重新渲染和打补丁后会调用该钩子。请注意,updated并不保证所有子组件也将被重新绘制。如果想等到整个视图重绘,可以用vm.$nextTick替换updated。服务器端渲染期间不会调用此挂钩。7.activated:激活保活组件时调用。服务器端渲染期间不会调用此挂钩。8.deactivated:当keep-alive组件被deactivated时调用。服务器端渲染期间不会调用此挂钩。9.beforeDestroy:在实例被销毁之前调用。在这一步,实例仍然完全可用。服务器端渲染期间不会调用此挂钩。10.destroyed:Vue实例销毁后调用。调用后,Vue实例指向的所有东西都将被解除绑定,所有事件监听器将被移除,所有子实例将被销毁。服务器端渲染期间不会调用此挂钩。beforecreate:添加加载事件created:结束加载,做一些初始化,并实现函数自执行()=>{})),提示编辑内容未保存等销毁:当前组件已删除,清除相关内容
