Живой чат не хранит сообщение - PullRequest
0 голосов
/ 31 октября 2019

Привет. Я пытаюсь сохранить сообщения в своей базе данных, чтобы я мог отобразить сообщения, когда пользователь снова перезагрузит страницу. Пользователь и дата сохраняются, но отправленные сообщения не сохраняются. Кто-нибудь может указать, что я пропустил?

(main.js)

$(document).ready(function(){
  var socket = io();
  socket.on('chat', addChat);
    getChats();
    $('#send').click(()=>{
      var chatMessage = {
        name: $('#txtName').val(),
        chat: $('#txtMessage').val()
      }
      postChat(chatMessage);
    });

  function postChat(chat){
    $.post('http://localhost:3000/chats', chat);
  }
  function getChats(){
    $.get('/chats', (chats)=>{
      Object.keys(chats).forEach(function(chats){
        chats.addChat;
      });
    });
  }
  function addChat(chatObj){
    $('#messages').append(`<h5>${chatObj.name} </h5><p>${chatObj.chat}</p>`);
  }
});

(app.js)

app.post('/chats', async(req, res)=>{
    try{
        let chat = new Chat();
        chat.user = req.body.name;
        chat.message = req.body.message;
        await chat.save();
        res.sendStatus(200);
        io.emit('chat', req.body);
    }
    catch(error){
        res.sendStatus(500);
        console.error(error);
    }
});

app.get('/chats', (req, res)=>{
    Chat.find({}, (error, chats)=>{
        if(error){
            console.log(error);
        }
        else{
            res.render('chat',{
                chats: chats
            });
        }
    });
});

1 Ответ

1 голос
/ 31 октября 2019

опс опечатка .. моя ошибка хранения неправильной переменной ..

        chat.user = req.body.name;
        chat.message = req.body.chat;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...