Не отображается подключение пользователя в Socket.io Node.js
Столкнулся с такой проблемой. Хотел на данном этапе разработки отображать, что пользователь подключился к чату(в данный момент без имен), но почему то ничего не выводит, в чем проблема? Сам чат работает.
server.js
const express = require('express');
const app = express();
const http = require('http');
const server = http.createServer(app);
const {Server} = require('socket.io');
const io = new Server(server);
const port = 3000;
app.use(express.static(__dirname));
app.get('/', (request, response ) => {
response.sendFile(__dirname + '/index.html');
});
io.on('connection', (socket) => {
socket.emit("a user connected");
console.log("a user connected");
socket.on('chat message', (msg) => {
io.emit('chat message', msg);
console.log('message: ' + msg);
});
socket.on("disconnect", () => {
console.log("a user disconnected");
});
})
server.listen(port, () => {
console.log(`listening on port ${port}`);
});
index.html
let socket = io.connect("http://localhost:3000");
let form = document.getElementById("form");
let input = document.getElementById("input");
form.addEventListener('submit', function(e) {
e.preventDefault();
if (input.value) {
socket.emit('chat message', input.value);
input.value = '';
}
});
socket.on('chat message', (msg) => {
let item = document.createElement('li');
item.innerHTML = msg;
messages.append(item);
window.scrollTo(0, document.body.scrollHeight);
});
let socket_connect = io.connect("http://localhost:3000");
socket_connect.on('connection', (con) => {
let item = document.createElement('li');
item.innerHTML = con;
connect.append(item);
});