所以我正在为我的应用程序构建聊天功能部分。我正在使用 sendbird sdk 以及用于 UI 的天才聊天。
我的消息不会显示,并且我不断收到以下警告。'GiftedChat:_id
缺少消息''
现在我已经三重检查了我的 sendbird 配置是否正确,我已正确登录并且还创建了适当的频道。这些都有效。
查看他们发布的我的消息日志,如图所示。
{
messageType: 'user',
messageId: 2122453749,
etc ...
}
但是他们发布为messageId,我是否必须更改它的结构?如果是这样,我该怎么做,因为 sendbird 已经预先配置了它。或者我可以在有天赋的聊天中改变这个吗?
请看下面我的代码片段。
getChannelMetaData(channel) {
if (channel) {
const self = this;
const messagesQuery = channel.createPreviousMessageListQuery();
messagesQuery.load(50, true, (messages, error) => {
if (error) {
console.error(error);
}
this.setState({
messages,
});
});
}
}
onSend(messages = []) {
const handle = this;
const sb = SendBird.getInstance();
const { channel } = this.props.navigation.state.params;
this.setState(previousState => {
channel.sendUserMessage(messages[0].text, (response, error) => {
if (!error) {
handle.getChannelMetaData(channel);
}
});
console.log(this.state.messages);
return { messages: GiftedChat.append(previousState.messages, messages) };
});
}
<GiftedChat
messages={this.state.messages}
renderBubble={bubble}
loadEarlier
renderLoadEarlier={loadEarlier}
isAnimated
keyboardShouldPersistTaps="never"
onSend={messages => this.onSend(messages)}
user={{
_id: userID,
}}
showUserAvatar
/>