【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';
相关推荐
Amumu1213821 小时前
Vue Router 和 常用组件库
前端·javascript·vue.js
霍理迪21 小时前
CSS移动端开发及less使用方法
前端·css
2601_9498574321 小时前
Flutter for OpenHarmony Web开发助手App实战:HTML参考
前端·flutter·html
£漫步 云端彡21 小时前
Golang学习历程【第八篇 指针(pointer)】
javascript·学习·golang
爱内卷的学霸一枚21 小时前
现代前端工程化实践:从Vue到React的架构演进与性能优化(7000字深度解析)
前端·vue.js·react.js
南风知我意95721 小时前
【前端面试4】框架以及TS
前端·面试·职场和发展
鹏北海-RemHusband21 小时前
踩坑记录:iOS Safari 软键盘下的“幽灵弹窗“问题
前端·ios·safari
极客小云21 小时前
【基于AI的自动商品试用系统:不仅仅是虚拟试衣!】
javascript·python·django·flask·github·pyqt·fastapi
一位搞嵌入式的 genius21 小时前
深入理解浏览器中的 JavaScript:BOM、DOM、网络与性能优化
前端·javascript·网络·性能优化
lang2015092821 小时前
一键生成Java Web项目:Tomcat-Maven原型解析
java·前端·tomcat