Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 如何将收到的消息设置为单数组格式_Reactjs_React Hooks - Fatal编程技术网

Reactjs 如何将收到的消息设置为单数组格式

Reactjs 如何将收到的消息设置为单数组格式,reactjs,react-hooks,Reactjs,React Hooks,当我使用console.log(receiveMessages)检查时,我想显示来自接收器的消息,我得到的数据如下图所示。但我希望数据在单个数组中设置为[“hello”,“hello amii”],请提前帮助我谢谢 使用以前的状态更新状态 指 const [receiveMessages, setReceiveMessages] = React.useState([]); socket.on('receive_message', (chatId,msg) =>{ let newS

当我使用
console.log(receiveMessages)
检查时,我想显示来自接收器的消息,我得到的数据如下图所示。但我希望数据在单个数组中设置为
[“hello”,“hello amii”]
,请提前帮助我谢谢


使用以前的状态更新状态

const [receiveMessages, setReceiveMessages] =  React.useState([]);

socket.on('receive_message', (chatId,msg) =>{
  let newStateMsg = ([...receiveMessages, msg]);
  setReceiveMessages(newStateMsg);
})

useEffect(() => {
 console.log(receiveMessages)
}, [receiveMessages]);
socket.on('receive_message', (chatId,msg) =>{
  setReceiveMessages((prevMsg) => [...prevMsg, msg]);
})