You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Vue3使用<script setup>语法时能否定义生命周期钩子方法?

问题结论

不能通过自定义同名函数的方式声明Vue生命周期钩子,你的写法不符合<script setup>下生命周期钩子的注册规则。

原因说明

onMounted是Vue官方提供的内置组合式API,不是约定的函数名。你自己声明的function onMounted() {}只是普通的自定义函数,没有和Vue的生命周期调度逻辑绑定,Vue不会自动识别执行该函数。

正确写法

你需要先从vue包中导入onMounted API,再将挂载后要执行的逻辑作为回调函数传入onMounted即可:

<script setup>
// 第一步:导入内置的onMounted API
import { onMounted } from 'vue'

const msg = 'Hello World!'
const props = defineProps({
  // 你的props定义
})

// 第二步:传入回调注册生命周期逻辑
onMounted(() => {
    console.log('the component is now mounted')
})
</script>

<template>
    <p>{{ msg }}</p>
</template>

内容的提问来源于stack exchange,提问作者Arjun Aravind

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 20:09:02