ReactJS SocketIO setState 到 JSON 对象

ReactJS SocketIO setState to JSON Object

从我之前的帖子 ,我试图找出设置我的 React 组件状态并使状态为 JSON

的最佳方法

JSON:

的代码示例位于此处
{
    "Object1": {
        "name": "1",
        "rank": "2"
    },
    "Object2": {
        "name": "3",
        "rank": "4"
    }
}

在我的 React 代码中,我是这样设置状态的。

componentDidMount() {
    this.socket.on('send data', this.updateState);
}

updateState(result) {
    this.setState({
        data: result
    });
    this.toObj = JSON.parse(this.state.data);
}

如何将 setState 设置为 JSON 对象,以便我可以轻松地在我的应用程序中使用数据?

setState之前解析,直接引用状态:

updateState(result) {
  const data = JSON.parse(result);
  this.setState({
    data
  });
}

render() {
  return (
     <ul>
       {this.state.data.map(obj => (
         <li><span>{obj.name}</span>: <span>{obj.rank}</span></li>
       )}
     </ul>
  )
}