#node.js #reactjs #react-native #mongoose
Вопрос:
Я уже давно общался в групповом чате в приложении react native, но теперь мне нужно реализовать статус прочитанного и непрочитанного сообщения, как в Whatsapp, когда член группы видит сообщение, отправителю отображается его время просмотра. Схема моего сообщения для группового чата приведена ниже
{
join: [
{
type: types.ObjectId,
ref: 'User'
}
],
sender: {
type: types.ObjectId,
ref: 'User'
},
text: {
type: String
},
date: { type: Date }
},
соединение-это массив идентификаторов получателей, которые содержат идентификаторы объектов пользовательской схемы
Мне нужно разместить непрочитанное свойство где-то в схеме, чтобы отслеживать состояние каждого пользователя при просмотре и чтении. Я думаю о чем-то вроде этого
join: [
{
id: {
type: types.ObjectId,
ref: 'User'
},
unread: {
type: Number,
default: 1, // 1 means not seen 0 means seen
required: true
},
seen: { type: Date }}
],
И, пожалуйста, также объясните мне, как бы я управлял логикой в componentDidUpdate react-native все сообщения и данные групп успешно сохраняются в состоянии, когда я должен выполнить вызов API, чтобы сообщение считывалось 0 для конкретного получателя, и если все видели сообщение одновременно