Итак, я создаю часть функциональности чата для моего приложения.Я использую sendbird sdk вместе с одаренным чатом для пользовательского интерфейса.
Мои сообщения не отображаются, и я продолжаю получать следующее предупреждение.'GiftedChat: _id
отсутствует для сообщения' '
Теперь я трижды проверил, что мой sendbird настроен правильно, я вошел в системуправильно, а также создали соответствующий канал.Они оба работают.
Просматривая журнал моих сообщений, которые они публикуют, как показано.
{ messageType: 'user',
messageId: 2122453749,
etc ... }
Но они публикуются как messageId , Должен ли яизменить структуру этого?Если да, то как мне это сделать, поскольку sendbird pre уже настроил это?Или я могу изменить это в одаренном чате?
Пожалуйста, взгляните на фрагменты моего кода ниже.
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
/>