client.startTyping 不是函数 (Discord.JS)

2 javascript node.js discord discord.js

我正在尝试使用 NodeJS 和 DiscordJS 创建一个 Discord 机器人。但是,当我尝试使用该client.startTyping()功能时,参考https://github.com/hydrabolt/discord.js/issues/440http://discordjs.readthedocs.io/en/latest/docs_client.html,似乎返回一个错误,指出该函数不存在。我怎样才能解决这个问题?

https://pastebin.com/S25fiJaZ(完整代码)

client.startTyping(message.channel);
for (i = 0; i < (times + 1); i++) {
    message.channel.sendMessage(msg);
}
client.stopTyping(message.channel);
Run Code Online (Sandbox Code Playgroud)

这是错误:

TypeError: client.startTyping is not a function
    at Client.client.on (/home/ty/discordbot/index.js:68:16)
    at emitOne (events.js:115:13)
    at Client.emit (events.js:210:7)
    at MessageCreateHandler.handle (/home/ty/discordbot/node_modules/discord.js/src/client/websocket/packets/handlers/MessageCreate.js:9:34)
    at WebSocketPacketManager.handle (/home/ty/discordbot/node_modules/discord.js/src/client/websocket/packets/WebSocketPacketManager.js:102:65)
    at WebSocketConnection.onPacket (/home/ty/discordbot/node_modules/discord.js/src/client/websocket/WebSocketConnection.js:325:35)
    at WebSocketConnection.onMessage (/home/ty/discordbot/node_modules/discord.js/src/client/websocket/WebSocketConnection.js:288:17)
    at WebSocket.onMessage (/home/ty/discordbot/node_modules/ws/lib/EventTarget.js:103:16)
    at emitTwo (events.js:125:13)
    at WebSocket.emit (events.js:213:7)
Run Code Online (Sandbox Code Playgroud)

Wri*_*ght 9

因为正如错误消息所说,客户端对象没有调用的函数startTyping。这个函数是在文本通道对象看到这里。此外,sendMessage已弃用。请改用发送。

message.channel.startTyping();
for (i = 0; i < (times + 1); i++) {
    message.channel.send(msg);
}
message.channel.stopTyping();
Run Code Online (Sandbox Code Playgroud)


Chr*_*lüm 6

discord.js V13 TextChannel.startTyping()中, 和TextChannel.stopTyping()已被单数替换TextChannel.sendTyping()。此方法会在 10 秒后或发送消息时自动停止输入。如更新到 V13 的文档中所示