如何循环来自mysql数据库的消息并正确显示它们

时间:2017-05-10 14:11:00

标签: javascript mysql node.js socket.io

我正在构建聊天程序。

每次用户发送消息时,都会将其存储在名为“消息”的表中。该表如下所示: enter image description here

当用户断开连接并稍后再次连接时,旧消息应以与发送时相同的方式显示。 在图像中,您可以看到收到的消息是灰色的,而其他消息是蓝色的: enter image description here

当用户连接时,我正在使用以下代码检索旧消息:



static class ThreadLocalMap {
    static class Entry extends WeakReference<ThreadLocal<?>> {
        Object value;
        Entry(ThreadLocal<?> k, Object v) {
            super(k);
            value = v; 
        }
    }
&#13;
&#13;
&#13;

结果在控制台中看起来像这样: enter image description here

如何循环结果并控制哪些消息(来自正文)应发出的消息:1。// Retrieve conversation client.on("retrieveConversation", function(data){ var peopleName = data.result.conversation_receiver; var retrievedMessages = []; connection.query("SELECT * FROM `messages` WHERE `message_key` = '" + data.result.conversation_key + "'", function(error, results, fields){ if (error) { console.log(error); return; } else if (results) { console.log("Messages: ", results); } }); console.log("Retrieving conversation", peopleName); client.emit("addConversationForSelf", peopleName); });或2. client.emit("newMessageToOthers", message); - 请注意,这两个选项控制消息是否为灰色或蓝色。

1 个答案:

答案 0 :(得分:0)

像这样的东西

StartWasModelDetailsVC.load()