Vue中created与mounted区别 ?

createdmounted 都是 Vue 实例的生命周期钩子,它们在 Vue 实例的生命周期中的不同阶段被调用。

  1. created:在这个阶段,Vue 实例已经完成了以下的配置:数据观测(data observer),属性和方法的运算,以及 $watch 事件驱动回调。然而,挂载阶段还没开始,$el 属性目前不可见。这意味着当 created 钩子被调用时,DOM 结构还未生成,如果你需要在创建实例时就对 DOM 进行操作,那么这个时候就无法获取到 DOM 节点。

例如:

new Vue({
  data: {
    message: 'Hello Vue!'
  },
  created: function () {
    console.log(this.message); // 输出 "Hello Vue!"
  }
})
  1. mounted:在 mounted 阶段,Vue 实例已经被挂载到了 DOM 上,可以直接访问到 DOM 元素。这就意味着当 mounted 钩子被调用时,你可以操作(查询、添加事件等)DOM。

例如:

new Vue({
  el: '#app',
  data: {
    message: 'Hello Vue!'
  },
  mounted: function () {
    console.log(this.$el.textContent); // 输出 "Hello Vue!"
  }
})

在这个例子中,mounted 钩子可以直接访问到 DOM 元素,而 created 钩子则不能。

发表评论

后才能评论