【ts】defineProps数组的类型声明

第一种:使用Record<string, unknown>

Record<string, unknown>表示一个对象,键是string类型,值是未知的

typescript 复制代码
import { defineProps, PropType } from 'vue';

const props = defineProps({
  dataList: {
    type: Array as PropType<Record<string, unknown>[]>,
    default: () => [],
  }
})

第二种:使用索引签名

索引签名表示任何键都是字符串,值可以是任何类型

typescript 复制代码
import { defineProps, PropType } from 'vue';

interface obj {
	[key: string]: unknown
}
const props = defineProps({
  dataList: {
    type: Array as PropType<obj[]>,
    default: () => [],
  }
})

PropType

PropType 是 Vue 提供的工具类型,用于定义复杂的 prop 类型

要使用,先安装

typescript 复制代码
npm install vue @vue/runtime-core

然后在页面中import

typescript 复制代码
import { PropType  } from 'vue';
相关推荐
清幽竹客4 分钟前
vue-18(使用 Vuex 插件实现高级功能)
前端·vue.js·前端框架·vue
粥里有勺糖22 分钟前
用Trae做了个公众号小工具
前端·ai编程·trae
棉花糖超人1 小时前
【从0-1的HTML】第2篇:HTML标签
前端·html
exploration-earth1 小时前
本地优先的状态管理与工具选型策略
开发语言·前端·javascript
OpenTiny社区2 小时前
开源之夏报名倒计时3天!还有9个前端任务有余位,快来申请吧~
前端·github
ak啊2 小时前
WebGL魔法:从立方体到逼真阴影的奇妙之旅
前端·webgl
hang_bro2 小时前
使用js方法实现阻止按钮的默认点击事件&触发默认事件
前端·react.js·html
哈贝#2 小时前
vue和uniapp聊天页面右侧滚动条自动到底部
javascript·vue.js·uni-app
用户90738703648642 小时前
pnpm是如何解决幻影依赖的?
前端
树上有只程序猿2 小时前
Claude 4提升码农生产力的5种高级方式
前端