Ну тут много, сам факт, что компоненты вроде одинаковые
class Messages extends React.Component {
constructor(props) {
debugger;
super(props);
...
}
render() {
return (
...
);
}
componentDidMount(){
this.messagesDivRef.current.scrollTop = this.messagesDivRef.current.scrollHeight;
}
}*/
const Messages = (props) => {
let dialogsJsx =
props.state.dialogsData.map((d) => (
<Dialog name={
d.name} id={
d.id} />
));
let messagesJsx =
props.state.messagesData.map((m) => (
<Message message={m.message} left={
m.id % 2} />
));
let msgTextArea = React.createRef();
let messagesDivRef = React.createRef();
let btn_send_click = () => {
if (msgTextArea.current.value != "")
props.addMessage(msgTextArea.current.value);
msgTextArea.current.value = "";
};
return (
...
);
};