reactjs - 将已知形状但大小未知的数组传递给组件?
问题描述
我是打字稿的新手。目前,我正在尝试将带有名称的道具传递items
给 React 组件。
items
长度未知但形状已知:
items = [
[string, (unknown) => unknown],
[string, (unknown) => unknown],
[string, (unknown) => unknown],
...
]
该组件是一个简单的手风琴组件,应该是可重用的。每个数组中的第一个元素描述应呈现的标题,函数描述应在单击时触发的动作。由于这是一个可重用的组件,该组件应该接受任何带有任意参数和返回值的操作。
这在 JS 中非常简单,但我无法理解如何在 TS 中指定类型?有人可以帮助或指出我正确的方向吗?
更新以供将来参考:
此解决方案可以完成工作。
-1 :将项目定义为一个 Array 数组。
-2:将内部数组定义为一个 touple(具有固定数量元素的数组。-3
:将函数定义为包含任意数量的参数和返回<any>
值。
interface Props {
title: string,
items: Array<[string, (...args: any) => any]>,
}
解决方案
将您的形状定义为类型:
type Type = [string, (arg0: any) => any];
let items: Array<Type> = [];
推荐阅读
- php - 处理购物车中的认证用户
- php - Php,将键值增加1的问题
- c++ - 如何在同一个文件中写入C++
- android - 如何将数据从适配器发送到 ViewModel 到 Fragment
- c# - .Net Core 中持久性 DataLayer 的通用 EF 模型生成器
- leaflet - 如何在 gridlayer 使用画布上绘制 geojson 地图?
- python - 如何从另一个 python 文件运行 python 文件?
- c# - 使用 Task.Factory 时共享资源
- jxbrowser - 创建浏览器实例时收到奇怪的消息
- lua - 如何为需要 2 个表的函数创建 SWIG 类型映射?