Я работаю в чате, я использую mysql для хранения старых сообщений. Мне удается получить их, когда кто-то входит в комнату, но я не могу отобразить его на передней панели Angular. Я пытался использовать socket.on, он не работал, я полагаю, это потому, что это массив сообщений. Мне нужна помощь ! Вот моя спина (контроллер):
socket.on('join', (data: any) => {
socket.join(data.room);
chatService.getAllMessages(data.room).then((results) => {
let messages = [];
for(let i = 0; i < results.length; i++){
let result = results[i];
let message: {
message_text: string,
message_date: string,
user: string
}
message = {
message_text: result.message_text,
message_date: result.message_date,
user: result.nickname
}
messages.push(message);
}
socket.emit('newmsg', messages)
})
socket.broadcast.to(data.room).emit('new user joined', {user:data.user.username, message:'has joined this room.'});
});
Если вам нужно больше кода, скажите мне.
Спасибо