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

Vue3 + TypeScript 中数组prop默认值函数报缺少返回类型错误如何解决

错误原因

这个报错是TypeScript类型校验触发的,和Vue props数组默认值的标准写法无关,是你的TypeScript配置要求所有函数必须显式声明返回类型,而你当前的default箭头函数没有标注返回值类型导致的。

修复方案

给default函数加上对应数组类型的返回值注解即可,如果你还不确定数组内的元素类型,可以先用unknown泛型占位,代码示例如下:

<template>
  <div>        
    <ul v-if="list.length !== 0">
      {{ list }}
    </ul>
  </div>
</template>
<script lang="ts">
export default {
  props: {
    list: {
      type: Array,
      // 这里添加返回类型注解,知道元素类型的话可以替换unknown为对应类型
      default: (): Array<unknown> => {
        return []
      },
    },
  },
}
</script>

如果你明确知道数组的元素类型,比如是字符串数组,直接把Array<unknown>替换成Array<string>或者简写string[]即可,类型会更严谨。

如果你临时不想给所有函数加返回类型,可以调整tsconfig.json中的noImplicitReturns配置为false,但不推荐这么做,显式标注类型更利于后期维护。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 15:45:03