vue生命周期
vue生命周期包含:
beforeCreate,created,beforeMount,mounted,beforeUpdate,updated,beforeDestroy,destroyed。
| vue生命周期详情图 |
beforeCreate和create。 beforeCreate时el(挂载模板)和data,还有其他prop(属性)的状态都是undefined。
created时el的状态依旧是undefined,但是data和其他prop都已经赋值初始化。
此时可以调用created方法,在方法里可以定义获取赋属性值的方法,为在mounted方法前将template模板属性值替换做准备。
beforeMount和mountedbeforeMount时el(模板)被编译,但是没有与data属性值相关联。
mounted时,将data里面的属性值绑定给了el模板。此时如果调用mounted方法时,与视图有关的prop属性值发生改变时会触发beforeUpdate方法。
注意:
vue模板挂载优先级:
render函数>template对象>el(外部html对象)。
beforeUpdate和updated
当mounted状态下,有关视图的prop属性值发生改变时,会触发beforeUpdate方法。
updated时,已经修改后的数据同步到视图中,回到mounted状态。
注意:
当在beforeUpdate中修改prop值不会再触发beforeUpdate方法,只会直接使用修改后的值.
而在updated方法中修改prop属性值,会再触发beforeUpdate方法。