Reactjs 控制台日志卡在无限循环中
我正在用React制作一个聊天应用程序,但由于某种原因,我的应用程序中的每个Reactjs 控制台日志卡在无限循环中,reactjs,react-chat-engine,Reactjs,React Chat Engine,我正在用React制作一个聊天应用程序,但由于某种原因,我的应用程序中的每个控制台.log都陷入了一个循环,并向控制台发送了无数的日志。我有点特别困惑,因为我正在为这个应用程序做一个视频教程,到目前为止,我已经完美地完成了所有的事情(因为我只有大约十分钟的时间) 这是我的应用程序组件: 从'react chat engine'导入{ChatEngine}; 从“./components/ChatFeed”导入ChatFeed; 导入“/App.css”; 常量应用=()=>{ 返回( } />
控制台.log
都陷入了一个循环,并向控制台发送了无数的日志。我有点特别困惑,因为我正在为这个应用程序做一个视频教程,到目前为止,我已经完美地完成了所有的事情(因为我只有大约十分钟的时间)
这是我的应用程序组件:
从'react chat engine'导入{ChatEngine};
从“./components/ChatFeed”导入ChatFeed;
导入“/App.css”;
常量应用=()=>{
返回(
}
/>
);
};
导出默认应用程序代码>这是因为组件一直在重新招标。。。你需要把它投入使用
import { useEffect } from 'react';
import MessageForm from './MessageForm';
import MyMessage from './MyMessage';
import TheirMessage from './TheirMessage';
const ChatFeed = (props) => {
const { chats, activeChat, userName, messages } = props;
const chat = chats && chats[activeChat];
useEffect(() => {
const renderMessages = () => {
const keys = Object.keys(messages);
console.log(keys);
};
renderMessages();
}, [messages]);
return <div>Chat feed</div>;
};
export default ChatFeed;
从“react”导入{useffect};
从“/MessageForm”导入MessageForm;
从“/MyMessage”导入MyMessage;
从“/TheirMessage”导入他们的消息;
const ChatFeed=(道具)=>{
const{chats,activeChat,userName,messages}=props;
const chat=chats&&chats[activeChat];
useffect(()=>{
常量renderMessages=()=>{
const keys=Object.keys(消息);
控制台日志(键);
};
renderMessages();
},[信息];
返回聊天源;
};
导出默认ChatFeed;
由于ChatEngine
正在呈现您的ChatFeed
,因此这将是查找罪犯的好地方。例如,在源代码中,我看到它使用了具有多种状态的上下文: