Skip to content

Instantly share code, notes, and snippets.

@hieptl
Created September 12, 2021 08:36
Show Gist options
  • Save hieptl/2db8c4279e73f82b469c40bd1632112d to your computer and use it in GitHub Desktop.
Save hieptl/2db8c4279e73f82b469c40bd1632112d to your computer and use it in GitHub Desktop.
index.js - CometChatMessages - Mention Chat App
class CometChatMessages extends React.PureComponent {
...
messageSent = messages => {
const message = messages[0];
const messageList = [...this.state.messageList];
let messageKey = messageList.findIndex(m => m._id === message._id);
if (messageKey > -1) {
const newMessageObj = { ...message };
const transformedMessage = this.messageListRef.transformSingleMessage(newMessageObj);
messageList.splice(messageKey, 1, transformedMessage);
messageList.sort((a, b) => a.id - b.id);
this.setState({ messageList: messageList, scrollToBottom: true });
}
};
//message is received or composed & sent
appendMessage = message => {
const cloneObject = {...message[0]};
const transformedMessage = this.messageListRef.transformSingleMessage(cloneObject);
let messages = [...this.state.messageList, transformedMessage];
this.setState({ messageList: messages, scrollToBottom: true });
};
...
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment