Я относительно новичок в TS, и у меня возникла странная проблема. Кажется, я определил все, но он, похоже, не распознает мой ввод данных.
Вот что у меня:
const Component = () => {
const [data, setData] = React.useState([[], []])
React.useEffect(() => {
fetchData()
}, [])
const fetchData = React.useCallback(async () => {
const data = await fetchDataController()
setData(data)
^^^^ error
})
}
Это вызывает ошибку,
Argument of type 'Element[][]' is not assignable to parameter of type 'SetStateAction<never[][]>'
Type 'Element[][]' is not assignable to type 'never[][]'
Type 'Element[]' is not assignable to type 'never[]'
Type 'Element is not assignable to type 'never'
Моя функция fetchDataController
возвращает массив массивов элементов.
Мой тип следующий:
type TData = {
id: string,
desc: string
}
Я пробовал делать что-то вроде,
const [data, setData] = React.useState<Array<TData[], TData[]>>([[], []])
Но, похоже, это не сработало. Что мне здесь не хватает?