我正在调用 API。
我得到的回应是:
var data =
[
{a: 'a', b: 'b'}
]
我想将 state 中的变量值设置为data
.
但它不起作用。给出错误=>
Objects are not valid as a React child Ex: - state = { stateVariable: [] } apiCall.then((data) => { this.setState({ stateVariable: data }) })
Objects are not valid as a React child
在 React 中,您不能直接渲染对象。
我觉得你正在尝试做这样的事情
<Text>{this.state.stateVariable}</Text>
它不起作用,因为那里的值是一个数组。
要解决此问题,您可以映射它:
{this.state.stateVariable.map(data => <Text>{data.a} {data.b}</Text>)}
其次,您可能已经在映射或循环它,但您仍然收到错误消息。这是因为如果你data
像我上面的地图一样渲染,它是一个对象{a:'a', b:'b'}
,这在反应中是不允许的。
所以你必须做到{data.a}
或{data.b}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句