【发布时间】:2020-11-06 17:05:47
【问题描述】:
我无法弄清楚如何在我从 axios.get 响应中获得的 json 对象中转换数组。我不断得到**属性'长度'在类型''上不存在。 TS2339 错误。如何摆脱这个错误? json 合约如下。我跳过了一些代码,只放了相关部分。
{
"someStuff":{
"items":[
{
"id":1
},
{
"id":2
}
]
}
}
ITravel.tsx
export interface ISomeStuff{
}
export interface IItems{
id:number;
}
export interface ITravel extends ISomeInterface{
items: IItems[];
}
Route.tsx
import React from 'react';
import FormLabel from 'react-bootstrap/FormLabel';
import { ITravel } from './ITravel.tsx';
type Props = {
iTravel: ITravel;
}
const Route = (props: Props) => {
const { items } = props.iTravel;
return(
<FormLabel>
<strong>{items.length}</strong>
</FormLabel>
);
}
【问题讨论】:
-
您在
import { Itravel }中有错字。应该是ITravel。如果你修复它会改变什么吗?因为否则您的代码似乎可以正常工作:staging-typescript.org/play?ts=4.0.0-beta#code/… -
嗨,Alex,我修正了那个错字,这不是问题。我仍然收到该错误
标签: javascript reactjs typescript react-bootstrap react-typescript