Javascript 侦听器参数必须是使用套接字io的函数错误类型
使用下面的函数使用套接字io加入连接,以使工作区出错 “listener”参数必须是Function类型 如何解决这个错误,下面我已经粘贴了整个错误,我对socketio还不熟悉,按照Javascript 侦听器参数必须是使用套接字io的函数错误类型,javascript,node.js,sockets,socket.io,Javascript,Node.js,Sockets,Socket.io,使用下面的函数使用套接字io加入连接,以使工作区出错 “listener”参数必须是Function类型 如何解决这个错误,下面我已经粘贴了整个错误,我对socketio还不熟悉,按照io.on()函数的预期,什么是满足需求的最佳方法 export const roomJoin = (socket, io, msg) => { if (msg.room_id) { socket.join(msg.room_id, () => {
io.on()
函数的预期,什么是满足需求的最佳方法
export const roomJoin = (socket, io, msg) => {
if (msg.room_id) {
socket.join(msg.room_id, () => {
io.on('room_join', function(socket){
socket.emit('request',{ status: true, msg: "room join", room_id: msg.room_id });
return
});
})
} else {
socket.emit('room_join', { status: false, message: "Invalid/Missing data" });
}
}
获取此错误
--------------------->connected EUFilhEfZmuXKjsIAAAA
------------------------->workspace_room_join {
msg: {
workspace_id: '5e29d571495f2e0043d2ddef',
token: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjVlMjlkNTcxNDk1ZjJlMDA0M2QyZGRlZiIsImVtYWlsIjoiZmFyaGFuNzAxMUBob3RtYWlsLmNvbSIsImlhdCI6MTU3OTk3ODMxMCwiZXhwIjoxNTgwNTgzMTEwfQ.ZlvVanwTMGcD5sXp0-T-W3VImSGhus5i5aDem1-hUTQ'
}
}
events.js:64
throw new ERR_INVALID_ARG_TYPE('listener', 'Function', listener);
^
TypeError [ERR_INVALID_ARG_TYPE]: The "listener" argument must be of type Function. Received type undefined
at checkListener (events.js:64:11)
at _addListener (events.js:226:3)
at Namespace.addListener (events.js:284:10)
at Server.<computed> [as on] (/Users/user/Documents/weaverse-sockets-version2/node_modules/socket.io/lib/index.js:505:29)
at /Users/user/Documents/weaverse-sockets-version2/dist/controller/roomJoin.js:62:16
at /Users/user/Documents/weaverse-sockets-version2/node_modules/socket.io/lib/socket.js:255:11
at processTicksAndRejections (internal/process/task_queues.js:75:11) {
code: 'ERR_INVALID_ARG_TYPE'
}
------------->已连接的EUFilhEfZmuXKjsIAAAA
------------------------->工作区\房间\加入{
味精:{
工作区id:'5e29d571495f2e0043d2ddef',
标记:“eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.EYJPZCI6IJVLKNTCxNDK1ZJJJLMDA0M2QYZGRLZIISIMVTYWLSIZFYAGFUNZAXMUB3RTYWLSMNVBSISIMLHDCI6MTU3OTK3ODMXMCWIZHWIJXNTGWNTGZMTEWFQ.ZLVANWTMGCD5SXP0-T-W3VImSGhus5i5aDem1-hUTQ”
}
}
events.js:64
抛出新错误\u无效\u参数\u类型('listener','Function',listener');
^
TypeError[ERR_INVALID_ARG_TYPE]:“listener”参数必须是Function类型。接收类型未定义
在checkListener(events.js:64:11)
at_addListener(events.js:226:3)
位于Namespace.addListener(events.js:284:10)
在服务器上。[截至](/Users/user/Documents/weaverse-sockets-version2/node_modules/socket.io/lib/index.js:505:29)
at/Users/user/Documents/weaverse-sockets-version2/dist/controller/roomJoin.js:62:16
at/Users/user/Documents/weaverse-sockets-version2/node_modules/socket.io/lib/socket.js:255:11
在处理和拒绝时(内部/process/task_queues.js:75:11){
代码:“错误\无效\参数\类型”
}