【发布时间】:2021-08-14 12:17:17
【问题描述】:
我正在学习如何使用 SocketIO、CodeMirror 和 ot.js 创建协作代码编辑器
但是有这个错误,我不知道如何解决。 这是我的套接字服务器代码
const socketIO = require('socket.io')
const ot = require('ot')
const roomList = {}
module.exports = server => {
let str = 'just a test'
const io = socketIO(server)
io.on('connection', socket => {
console.log(`${io.engine.clientsCount} connected clients`)
socket.on('joinRoom', data => {
if(!roomList[data.roomId]){
const socketIOServer = new ot.EditorSocketIOServer(str, [], data.roomId, function() {
cb(true)
})
roomList[data.roomId] = socketIOServer
}
roomList[data.roomId].addClient(socket)
roomList[data.roomId].setName(socket, data.username)
socket.room = data.roomId,
socket.join(data.roomId)
})
socket.on('newMessage', data => {
io.to(data.roomId).emit('newMessage', data)
})
socket.on('disconnect', () => {
socket.leave(socket.room)
})
})
}
这是错误
myprojectpath/node_modules/ot/lib/editor-socketio-server.js:33
.emit('doc', {
^
TypeError: Cannot read property 'emit' of undefined
感谢您的帮助
【问题讨论】:
标签: javascript node.js socket.io