2 years ago
#384913
silhuhon
TypeError: Cannot read properties of undefined (reading 'emit')
I'm trying to use sockets to create a real time video chat application.
This is my server.js code:
const app = express()
const server = require('http').Server(app)
const io = require('socket.io')(server)
const { v4: uuidv4 } = require('uuid')
app.set('view engine', 'ejs')
app.use(express.static('public'))
app.get('/',(req, res) => {
res.redirect(`/${uuidv4()}`)
})
app.get('/:room', (req, res) => {
res.render('room', { roomId: req.params.room })
})
io.on('connection', socket => {
socket.on('join-room', (roomId, userId) => {
//console.log(roomId, userId)
socket.join(roomId)
socket.to(roomId).broadcast.emit('user-connected', userId)
})
})
server.listen(3000)
This is the error that I get:
TypeError: Cannot read properties of undefined (reading 'emit')
at Socket.<anonymous> (C:\Users\desktop\Desktop\videochat\server.js:22:36)
at Socket.emit (node:events:520:28)
at Socket.emitUntyped (C:\Users\desktop\Desktop\videochat\node_modules\socket.io\dist\typed-events.js:69:22)
at C:\Users\desktop\Desktop\videochat\node_modules\socket.io\dist\socket.js:466:39
at processTicksAndRejections (node:internal/process/task_queues:78:11)
How can I fix this?
node.js
sockets
socket.io
0 Answers
Your Answer