更新阶段

beforeUpdate() {

console.log(“beforeUpdate”);

},//更新之前

updated() {

console.log(“updated”);

},//更新之后

卸载阶段

beforeDestroy() {

console.log(“beforeDestroy”);

},//卸载之前

destroyed() {

console.log(“destroyed”);

},//卸载之后

我们现在把代码整理在一起,看一下页面反馈

<button @click=“n++”>{{n}}

在这里插入图片描述

我们可以看到,反馈的是

创建前-创建后-挂在前-挂在后

我们点击下按钮,让数据的到一个更新在看反馈

在这里插入图片描述

我们可以看出,在上方的基础上,多了一个更新前-更新后

我们在阶段上输出一些东西看一下区别

beforeCreate() {

console.log(“beforeCreate”);

// console.log(this.$el) //undefined

// console.log(this.$data) //undefined

},

created() {

console.log(“created”);

// console.log(this.$el) //undefined

// console.log(this.$data) //获取到了

},

在创建前或者创建后,我们去获取$el都是获取不到的

但是我们仔创建后就可以获取data数据了

beforeMount() {

console.log(“beforeMount”);

// console.log(this.$el) //undefined

},

mounted() {

console.log(“mounted”);

// console.log(this.$el) //获取到了

},

在挂载前获取$el是获取不到的,但是挂载后就可以获取到了

也就是说,我们想要操作dom的话需要在挂载后才可以

现在我们给app.vue加一个子组件,看一下页面反馈

在这里插入图片描述

从流程可以看出来,我们执行的顺序为

父组件创建前-父组件创建后-父组件挂载前-子组件创建前-子组件创建后-子组件挂载前-子组件挂载后-父组件挂载后

我们现在来看一下,组件被销毁后执行的顺序

<button @click=“n++”>{{n}}

<button @click=“show = !show”>{{show}}

Logo

前往低代码交流专区

更多推荐