admin 管理员组

文章数量: 1184232


2024年3月12日发(作者:extend的词性变化)

onmounted vue3写法

在Vue3中,由于渲染器的更新机制发生了变化,而导致在

mounted钩子函数中,无法访问到响应的DOM节点。为了解决这个问题,

Vue3提供了一个新的生命周期钩子函数onMounted。onMounted钩子函

数可以让我们在组件挂载完毕后操作DOM节点,它是Vue3中处理

mounted钩子函数的最佳替代方案。

下面,让我们来详细了解一下onMounted的使用方式。

步骤一:引入onMounted

在Vue3中,我们需要先引入onMounted,这可以通过以下方式实

现:

```

import { onMounted } from 'vue'

```

步骤二:定义onMounted钩子函数

onMounted钩子函数的定义方式与mounted十分相似。它也需要

在setup函数中被调用,同时需要传入一个回调函数。

```

import { onMounted } from 'vue'

export default {

setup() {

// 定义onMounted钩子函数

onMounted(() => {

('onMounted')

})

}

}

```

需要注意的是,由于setup函数是在beforeCreate之后、

created之前执行的,在这里调用onMounted,其实是在组件渲染之前

就让它生效了。

步骤三:使用onMounted钩子函数操作DOM

onMounted钩子函数主要用于对DOM进行操作。下面我们来看一

下如何使用onMounted钩子函数操作DOM元素。

```

```

在这个例子中,我们为div元素添加了一个ref,并在setup函

数中定义了一个响应式对象myDiv。在onMounted钩子函数中,我们通

过来访问DOM元素,然后修改它的innerHTML。

步骤四:使用异步操作

由于onMounted是异步执行的,因此可以在它里面编写异步操作。

我们可以使用async/await或者Promise等方法。

```

export default {

setup() {

const myDiv = ref(null)

onMounted(async () => {

const result = await fetch('...')

const data = await ()

TML = t

})

return {

myDiv

}

}

}

```

在这个例子中,我们使用了async/await语法,通过fetch获取

了一个API的数据,并在onMounted钩子函数中使用该数据更新了

myDiv的innerHTML。

通过以上步骤,我们可以看到onMounted的使用非常简单。它提

供了一个方便的方式操作DOM、请求数据、启动动画等操作。在Vue3

中,onMounted钩子函数已经成为mounted的首选替代方案。


本文标签: 函数 钩子 操作