当发送新消息时,它会转到所有不同的组通道,默认情况下它不应该是这样。任何建议表示赞赏。
对于消息传递部分,我必须使用数组来存储以前的和新的消息,并在需要时加载它。
使用的语言是react.js,它适用于简单的web-app。
sendMessage(message) {
const data = '';
const customType = '';
this.state.currentChannel.sendUserMessage(message, data, customType, (mess, error) => {
if (error) {
console.error(`error sending message: ${error}`);
return;
}
console.log(`message sent!! ${mess}`);
console.log(mess);
const messagesState = this.state.messages;
messagesState.push(mess);
this.setState({
messages: messagesState,
});
});
}
这部分有什么问题吗?
答案 0 :(得分:1)
您的频道处理程序会收到所有传入的消息。您必须检查消息的频道是否与您当前输入的频道相对应。
所以,在onMessageReceived
,
if (channel.url == myChannelUrl) {
// Add the message to myChannel's message list.
}
答案 1 :(得分:1)
只需在每个通道处理程序之前添加一个空数组。
message = [];
channelHandler = currentChannel;