使用多个 "socket.on" 调用组织代码的最佳方式
Best way of organising code with multiple "socket.on" calls
我有一个程序,它使用 nodejs 和 socket.io 进行多人在线问答游戏。
我的问题是我的 app.js(我的服务器代码),使文件非常长,因为它们需要在 io.on('connection', function(){}) 中才能工作。
我想知道 organising/splitting 最好的方法是什么。这是代码的直观表示:
io.on('connection', function (socket) {
socket.on('Add Room', function () {...
})
socket.on('Joined Lobby', function () {...
})
socket.on('Request Game Start', function () {...
})
socket.on('Answered Question', function () {...
})
}
将相关的回调捆绑到配置函数中,并将每个回调放在一个单独的文件中,如下所示:
// configRoomCbks.js
export function configRoomCbks (socket) {
socket.on('Add Room', function () {...
})
socket.on('Joined Lobby', function () {...
})
socket.on('Request Game Start', function () {...
})
}
import { configRoomCbks } from "./configRoomCbks"
io.on('connection', function (socket) {
configRoomCbks(socket);
// more callback config functions here
// e.g. configGamePlayCbks(socket)
}
我有一个程序,它使用 nodejs 和 socket.io 进行多人在线问答游戏。
我的问题是我的 app.js(我的服务器代码),使文件非常长,因为它们需要在 io.on('connection', function(){}) 中才能工作。
我想知道 organising/splitting 最好的方法是什么。这是代码的直观表示:
io.on('connection', function (socket) {
socket.on('Add Room', function () {...
})
socket.on('Joined Lobby', function () {...
})
socket.on('Request Game Start', function () {...
})
socket.on('Answered Question', function () {...
})
}
将相关的回调捆绑到配置函数中,并将每个回调放在一个单独的文件中,如下所示:
// configRoomCbks.js
export function configRoomCbks (socket) {
socket.on('Add Room', function () {...
})
socket.on('Joined Lobby', function () {...
})
socket.on('Request Game Start', function () {...
})
}
import { configRoomCbks } from "./configRoomCbks"
io.on('connection', function (socket) {
configRoomCbks(socket);
// more callback config functions here
// e.g. configGamePlayCbks(socket)
}