使用多个 "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)
}