状态将在将来的某个时候使用带有对象数组的useState
钩子进行更新,该对象具有如下所示的接口:
export interface DataSource {
dataPiont: Array<DataPoint>;
}
export interface DataPoint {
[key: string]: string | number;
}
我在必须初始化状态的地方设置了钩子:
const [fetchedData, setFetchedData] = useState<DataSource>([{ key: '' }]);
但是我收到Typescript错误"Argument of type '{ key: string; }[]' is not assignable to parameter of type 'DataSource | (() => DataSource)'.
我不想在我的界面中添加null
或undefined
或[]
,因为我必须在整个应用程序中使用它。
如何在此实例中成功初始化状态?
答案 0 :(得分:2)
因为no instance of constructor "std::vector<_Ty, _Alloc>::vector [with _Ty=float, _Alloc=std::allocator<float>]" matches the argument list
具有class movmentCalculator
{
private:
std::vector<float> toSim { {5, 5, 5, 5}, {6, 6, 6, 6}, {7, 7, 7, 7} };
public:
void printStack()
{
for (int i = 0; i < toSim.size(); i++)
for (int j = 0; j < toSim.size(); j++)
{
std::cout << "item" << i << ": " << toSim[i][j] << std::endl;
}
}
};
对象密钥。也许您想使用界面DataSource
来表示状态?
dataPiont