我有一个没有意义的错误,我正在用钩子输入我的状态值,但他说错误不是同一类型。
已经尝试过使用空数组,甚至带有一些数据的数组,并且总是错误是相同的。
import React, { useState } from 'react';
import { Row, Col } from 'config/styles';
import Bed from './Bed';
interface DataTypes {
date: string;
value: number;
}
function Beds(): JSX.Element {
const { data, setData } = useState<DataTypes[]>([]);
return (
<>
<Row>
{data.map((d, i) => (
<Col key={i} sm={16.666} lg={10}>
<Bed {...d} />
</Col>
))}
</Row>
</>
);
}
export default Beds;
呃这个:
TypeScript error in /Users/keven/Documents/carenet/orquestra-frontend/src/Beds/index.tsx(11,11):
Property 'data' does not exist on type '[DataTypes[], Dispatch<SetStateAction<DataTypes[]>>]'
你应该使用 const [ data, setData] 而不是 const { data, setData }
它应该是一个数组,而不是一个对象:
const [data, setData] = useState<DataTypes[]>([]);
错误消息中有以下指示:
type '[DataTypes[], Dispatch<SetStateAction<DataTypes[]>>]'