[Typescript + React] Tip: Use generics in React to make dynamic and flexible components

You can use generics in React to make incredibly dynamic, flexible components. Here, I make a Table component with a generic 'items' type.


interface TableProps<TItem> {
    items: TItem[]
    renderItem: (item: TItem) => React.ReactNode
}

export function Table<TItem>(props: TableProps<TItem>) {
    return null
}

type TableItem = {id: number; name: string}

const Component = () => {
    return (
        <Table<TableItem>
            items={[
                {
                    id: 1,
                    name: 'Jon',
                },
            ]}
            renderItem={(item) => <div>{item.name}</div>}
        ></Table>
    )
}

 

posted @   Zhentiw  阅读(27)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2019-10-07 [Svelte 3] Use await block to wait for a promise and handle loading state in Svelte 3
2016-10-07 [TypeScript] Interface and Class
点击右上角即可分享
微信分享提示