我从服务器接收到如下所示的json字符串:
[{"foo":"123", "bar:456"},{"foo":"234","bar":"asd"}, ...]
我希望在我的反应页面上创建一个列表。我必须解析字符串以将其转换为对象数组,我已经尝试使用JSON.parse(字符串),但似乎我唯一成功的地方是在console.log中,在任何其他地方,我得到像Objects are not valid as a React child (found: object with keys {foo,bar})
这样的错误。我在setState之前尝试解析,在setState之后,在...任何建议之后?
问题不在于渲染对象数组,而是将字符串保存为状态内的对象数组,以便稍后再渲染。
这是我使用的代码:
import React, {Component} from 'react';
import {getMemberList} from '../../utils/client-api';
export default class Members extends Component {
constructor() {
super();
this.state = {
memberList: []
};
}
memberList() {
getMemberList().then(memberList => {
this.setState({memberList});
console.log(JSON.parse(memberList));
});
}
componentDidMount() {
this.memberList();
}
render() {
const {memberList} = this.state;
return (<div>
{memberList}
</div>);
}
}