【发布时间】:2021-08-29 21:39:13
【问题描述】:
我是使用 React 和 typescript 的新手,最近遇到了以下问题。我的理解是,如果我将初始状态声明为一个空数组,如下所示:
const [todos, setTodos] = useState<{ id: string; text: string }[]>([])
我需要为 typescript 提供数组最终外观的接口。因此useState<{ id: string; text: string }[]>。我很好奇的是我从 api 等获取数据的用例,并且架构非常大或值是动态的。我该如何让打字稿知道我的空数组最终将设置为什么。如果我要获取一个非常大的对象数组,我觉得必须遍历并概述每个键值对似乎效率不高。或者如果数据是动态的,我怎么可能概述架构?
【问题讨论】:
-
如果我不知道整体形状怎么办,因为它是动态的,这就是我要问的
-
如果数据是动态的,那么您可以使用
any[]或Record<string, any>[]之类的东西,或者您可以定义一个简化的类型或接口,只包含您知道始终存在并且您实际使用的属性.
标签: reactjs typescript react-typescript