在Typescript中使用带有随机字段的Json string (我不知道json string内部是什么类型的字段或它们的类型)。我想用默认类型的字段解析对象的json string,例如string。
像这样解析:let values = JSON.parse(this.props.values!)
由于类型为unknown,在使用React.js时出错。我也不能预定义interface,因为我不知道json string里面是什么
Object.entries(values).map(([key, value]) => {
renderValues = (
<>
<div className="col-1 text-left p-2" ></div>
<div className="col-2 text-right p-2" >{key}</div>
<div className="col-9 text-left p-2" >{value}</div>
</>)
})有错误:类型'unknown‘不可赋值给类型'ReactNode’。类型“”unknown“”不能赋值给类型“”ReactPortal“”。to (2322) index.d.ts(1244,9):所需的类型来自于此处在类型“”DetailedHTMLProps,HTMLDivElement>“”上声明的属性“”which“”。“”
如何在typescript中解析json string to object时,赋予object字段默认类型或将object字段强制转换为default类型?
发布于 2019-10-29 15:39:17
正如评论所说,您可以尝试以下操作:
renderValues = Object.entries(values).map(
([key: string, value: string]) => (
<>
<div className="col-1 text-left p-2"></div>
<div className="col-2 text-right p-2">{key}</div>
<div className="col-9 text-left p-2">{value}</div>
</>
)
);请阅读我之前发布的link,因为您没有正确使用Array.prototype.map。
https://stackoverflow.com/questions/58602910
复制相似问题