created:在模板渲染成html前调用,即通常初始化某些属性值,然后再渲染成视图.
mounted:在模板渲染成html后调用,通常是初始化页面完成后,再对html的dom节点进行一些需要的操作。
如:数据初始化一般放到created里面,这样可以及早发请求获取数据,
如果有依赖dom必须存在的情况,就放到mounted(){this.$nextTick(() => { /* code */ })}里面。
生命周期钩子 | 组件状态 | 最佳实践 |
beforeCreate | 实例初始化之后,this指向创建的实例,不能访问到data、computed、watch、methods上的方法和数据 | 常用于初始化非响应式变量 |
created | 实例创建完成,可访问data、computed、watch、methods上的方法和数据,未挂载到DOM,不能访问到$el属性,$ref属性内容为空数组 | 常用于简单的ajax请求,页面的初始化 |
beforeMount | 在挂载开始之前被调用,beforeMount之前,会找到对应的template,并编译成render函数 | |
mounted |