父组件
...
<son :config="data"></son>
// 比如父组件有个表格数据类型是
interface ITableData {
id: number;
date: string;
name: string;
address: string;
}
const data: Array<ITableData> = [
{id: 1, date: '1', name: '1', address: '1'}
]
...
子组件
...
这个泛型T,如何通过父组件传递给子组件
<table :data="test">
</table>
//这个类型T就必须是父组件的 ITableData 类型
const test: Array<T> = ...
据我所知,目前应该是没有办法通过
props
传递泛型的。有一种办法,可以定义一个泛型的方法并 expose 出去,外部的组件可以通过该方法推断泛型。
补充:
如果你使用
<script setup>
的话,可以起一个单独的ts
文件来存放类型声明,然后在父子组件均从该文件引入类型即可: