Vue updated 生命周期钩子

实例

每次更新 DOM 树时,使用 updated 生命周期钩子向控制台写入一条消息。

  1. export default {
  2. data() {
  3. return {
  4. sliderVal: 50,
  5. renderCount: 0
  6. }
  7. },
  8. updated() {
  9. this.renderCount++;
  10. console.log('Updated ' + this.renderCount + ' times.')
  11. }
  12. }

定义与用法

updated 生命周期钩子发生在 DOM 树更新之后。

如果我们在 updated 钩子中修改属性或做其他事情来触发新的渲染,那么 updated 钩子将在新的渲染之后再次调用,我们很可能已经创建了一个无限循环。

为了避免无限循环,我们应该始终考虑使用 beforeUpdate 生命周期钩子,而不是 updated 的生命周期钩子。

this.$nextTick()nextTick() 函数还可以用于在 DOM 更新后运行代码。

注意:在上面的例子中,我们将渲染计数写入控制台,因为对视图进行更改将重新激活更新的钩子并创建一个无限循环。

关联页面

Vue 教程: Vue 生命周期钩子

Vue 教程: beforeUpdate 钩子

Vue 参考引用: Vue beforeUpdate 生命周期

Vue 参考引用: Vue $nextTick() 方法

分类导航