【问题标题】:By what principle is a message sent to Socket.io消息是通过什么原理发送到 Socket.io
【发布时间】:2022-01-16 06:09:20
【问题描述】:

我有给定的代码

socket.on('chat message', (msg) => {
    console.log("check");
    let item = document.createElement('li');
    item.innerHTML = msg;
    messages.append(item);
    window.scrollTo(0, document.body.scrollHeight);
});

为什么只有有变量“messages”的时候才发消息,哪里都不公布,第一次见面,也不用其他名字发,怎么回事?

【问题讨论】:

  • 此代码不发送消息,它“监听”并接收消息。从你的描述看不清楚是什么问题。

标签: node.js dom


【解决方案1】:

这不是 nodejs 代码,它是浏览器 Javascript。

在您的代码出现的环境中,有人做了这样的事情:

const messages = document.querySelector('ul#messages')

检索包含传入消息的无序列表<ul id='messages'>...</ul> 的DOM 元素。然后,您的代码将新收到的消息作为列表项 <li> 附加到该无序列表的末尾。

如果messages 项不可用,您的socket.on 事件处理程序在调用.append() 时会收到错误并立即返回。检查您的浏览器开发工具是否有错误消息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-17
    • 2012-08-09
    • 1970-01-01
    相关资源
    最近更新 更多