前言
今天继续加油学习,今天整理一下VUE中生命周期那有些,平且依次说明给个的使用场景以及作用。嘻嘻嘻,让我们一起学起来好吧~~~come
生命周期
beforeCreate: 在创建组件之前使用;在实例初始化之后,进行数据侦听和事件/侦听器的配置之前同步调用。
代码语言:javascript复制beforeCreate:function(){
//组件创建之前
console.log(this)
}
created:在创建之后使用;
使用该组件,就会调用created方法,
在created这个方法中可以操作后端的数据 数据驱动视图;
应用:发送ajax请求
代码语言:javascript复制 created:function(){
console.log(this.msg)
},
beforeMount:挂载数据到DOM之前会调用
在挂载开始之前被调用:相关的 render
函数首次被调用。
该钩子在服务器端渲染期间不被调用。
代码语言:javascript复制 beforeMount:function(){
console.log(document.getElementById('app'));
},
mounted:挂载数据到DOM之后会调用Vue作用之后的DOM 操作DOM
实例被挂载后调用,这时 el 被新创建的 vm.el 替换了。如果根实例挂载到了一个文档内的元素上,当 mounted 被调用时 vm.el 也在文档内。
代码语言:javascript复制mounted:function(){
console.log(document.getElementById('app'));
},
beforeUpdate:在更新DOM之前 调用该钩子 应用:可以获取原始的DOM
在数据发生改变后,DOM 被更新之前被调用。这里适合在现有 DOM 将要被更新之前访问它,比如移除手动添加的事件监听器。
该钩子在服务器端渲染期间不被调用,因为只有初次渲染会在服务器端进行。
代码语言:javascript复制beforeUpdate:function(){
//在更新DOM之前 调用该钩子 应用:可以获取原始的DOM
console.log(document.getElementById('app').innerHTML);
},
updated:在更新DOM之后 调用该钩子 应用:可以获取最新的DOM
在数据更改导致的虚拟 DOM 重新渲染和更新完毕之后被调用。
当这个钩子被调用时,组件 DOM 已经更新,所以你现在可以执行依赖于 DOM 的操作。然而在大多数情况下,你应该避免在此期间更改状态。如果要相应状态改变,通常最好使用计算属性或 watcher取而代之。
代码语言:javascript复制 updated:function(){
console.log(document.getElementById('app').innerHTML);
},
beforeDestroy:
- 实例销毁之前调用。在这一步,实例仍然完全可用。
该钩子在服务器端渲染期间不被调用。
代码语言:javascript复制beforeDestroy:function(){
console.log('beforeDestroy')
},
destroyed:
- 实例销毁后调用。该钩子被调用后,对应 Vue 实例的所有指令都被解绑,所有的事件监听器被移除,所有的子实例也都被销毁。
该钩子在服务器端渲染期间不被调用。
代码语言:javascript复制destroyed:function(){
console.log('destroyed')
},
activated: 用于组件激活的功能
代码语言:javascript复制 activated:function(){
console.log('组件被激活了')
},
deactivated:用于组件被停用
代码语言:javascript复制deactivated:function(){
console.log('组件被停用了')
}