Я пытаюсь создать личную функцию обмена сообщениями с пользователем, но я этого не сделал.
У меня есть UserItem и MessageItem на стороне реакции.
Я пытаюсь составить список пользователей на боковой панели, и когда пользователь нажимает любое имя пользователя, появляется история чата.
Я попробовал пару схем, и я получаю сообщения на стороне клиента и сопоставляю их, но сообщения и имена пользователей приходят один одним. Я не знаю, должен ли я собираться или что-то в этом роде, я новичок на уровне Mern и начинающих в области кодирования.
const MessageSchema = new Schema({
message: {
type: String,
required: true
},
users: [
{
type: Schema.Types.ObjectId,
ref: "user",
required: true
}
],
sender: {
type: Schema.Types.ObjectId,
ref: "user",
required: true
},
date: {
type: Date,
default: Date.now
}
});
Результаты моего состояния Redux;
message: {
messageLoading: false,
messages: [
{
users: [
{
_id: '5e7493bb469ef63768de05db',
name: 'John Doe'
},
{
_id: '5e736959492cae35ccdd7172',
name: 'İbrahim Karagöz'
}
],
_id: '5e79bb66ccfec91a3c852095',
message: 'dummy',
sender: '5e7493bb469ef63768de05db',
date: '2020-03-24T07:48:54.839Z',
__v: 0
},
{
users: [
{
_id: '5e7493bb469ef63768de05db',
name: 'John Doe'
},
{
_id: '5e736959492cae35ccdd7172',
name: 'İbrahim Karagöz'
}
],
_id: '5e79bb8eccfec91a3c852096',
message: 'second message from john doe',
sender: '5e7493bb469ef63768de05db',
date: '2020-03-24T07:49:34.310Z',
__v: 0
},
{
users: [
{
_id: '5e7493bb469ef63768de05db',
name: 'John Doe'
},
{
_id: '5e736959492cae35ccdd7172',
name: 'İbrahim Karagöz'
}
],
_id: '5e79bb93ccfec91a3c852097',
message: 'last message from john doe.',
sender: '5e7493bb469ef63768de05db',
date: '2020-03-24T07:49:39.743Z',
__v: 0
},
{
users: [
{
_id: '5e78f2ba0c44502e300ec0bb',
name: 'John Doe 2'
},
{
_id: '5e736959492cae35ccdd7172',
name: 'İbrahim Karagöz'
}
],
_id: '5e79bbadccfec91a3c852098',
message: 'first message from john doe 2',
sender: '5e78f2ba0c44502e300ec0bb',
date: '2020-03-24T07:50:05.207Z',
__v: 0
},
{
users: [
{
_id: '5e78f2ba0c44502e300ec0bb',
name: 'John Doe 2'
},
{
_id: '5e736959492cae35ccdd7172',
name: 'İbrahim Karagöz'
}
],
_id: '5e79bbb5ccfec91a3c852099',
message: 'another message from john doe 2',
sender: '5e78f2ba0c44502e300ec0bb',
date: '2020-03-24T07:50:13.291Z',
__v: 0
},
{
users: [
{
_id: '5e78f2ba0c44502e300ec0bb',
name: 'John Doe 2'
},
{
_id: '5e736959492cae35ccdd7172',
name: 'İbrahim Karagöz'
}
],
_id: '5e79bbbbccfec91a3c85209a',
message: 'last message from john doe 2',
sender: '5e78f2ba0c44502e300ec0bb',
date: '2020-03-24T07:50:19.974Z',
__v: 0
}
],
selectedMessages: [],
messageErrors: [],
messageSuccess: ''
}