提问者:小点点

Client.voice.OnVoiceStateUpdate不是函数-DiscordJS


我经历这个问题已经有一段时间了;我的机器人一周前还工作得很好。

我正在运行最新的NodeJS(code15.5.1/code>),discord.js(code12.5.1/code>)和erela.js(code2.3.1/code>)

我试着重新安装了所有它们,但仍然出现了返回问题(下面的问题),

我已经在官方的discord.js服务器上询问了10多次,

我已经在erela.js官方不和问了(等待回复)

我完全不知道为什么我会遇到这个问题,我的代码实际上没有任何东西,因为它工作得很好,并且运行在最新的模块上(上面描述了erela.js&discord.js)

现在突然之间大约。一周前,这个问题出现了,自从发现这个问题以来,我一直在努力解决它的问题。

我在下面提供了完整的stacktrace,以及指向discord.js src的确切文件的链接:

discord.js Repo-VoiceStateUpdate.js

[2:57:49 PM] ERROR [Uncaught Exception]: TypeError: client.voice.onVoiceStateUpdate is not a function
    at VoiceStateUpdate.handle
        (/home/thewarden/node_modules/discord.js/src/client/actions/VoiceStateUpdate.js:31:22)
    at Object.module.exports [as VOICE_STATE_UPDATE]
        (/home/thewarden/node_modules/discord.js/src/client/websocket/handlers/VOICE_STATE_UPDATE.js:4:35)
    at WebSocketManager.handlePacket
        (/home/thewarden/node_modules/discord.js/src/client/websocket/WebSocketManager.js:384:31)
    at WebSocketShard.onPacket
        (/home/thewarden/node_modules/discord.js/src/client/websocket/WebSocketShard.js:444:22)
    at WebSocketShard.onMessage
        (/home/thewarden/node_modules/discord.js/src/client/websocket/WebSocketShard.js:301:10)
    at WebSocket.onMessage (/home/thewarden/node_modules/ws/lib/event-target.js:132:16)
    at WebSocket.emit (node:events:376:20)
    at Receiver.receiverOnMessage (/home/thewarden/node_modules/ws/lib/websocket.js:825:20)
    at Receiver.emit (node:events:376:20)
    at Receiver.dataMessage (/home/thewarden/node_modules/ws/lib/receiver.js:437:14)
    at Receiver.getData (/home/thewarden/node_modules/ws/lib/receiver.js:367:17)
    at Receiver.startLoop (/home/thewarden/node_modules/ws/lib/receiver.js:143:22)
    at Receiver._write (/home/thewarden/node_modules/ws/lib/receiver.js:78:10)
    at writeOrBuffer (node:internal/streams/writable:395:12)
    at Receiver.Writable.write (node:internal/streams/writable:340:10)
    at TLSSocket.socketOnData (/home/thewarden/node_modules/ws/lib/websocket.js:900:35)

共1个答案

匿名用户

是一个事件。要运行它,需要使用调用事件的

client.on('voiceStateUpdate', oldState, newState => {
// code here
})

要了解有关voiceStateUpdate事件及其回调的更多信息,请访问https://discord.js.org/tax/docs/main/stable/class/client?scrollto=e-VoiceStateUpdate