簡體   English   中英

discord.js v12:如何在 DM 頻道中等待消息?

[英]discord.js v12: How do I await for messages in a DM channel?

這是我嘗試過的代碼:

message.author.dmChannel.awaitMessages(msg => {
    console.log(msg.content)
});

但它返回此錯誤消息:

TypeError: Cannot read property 'awaitMessages' of null

更新代碼:

message.author.send("What is your name?")

const filter = m => m.author.id === message.author.id

message.author.dmChannel.awaitMessages(filter)
     .then((collected) => console.log(collected.first().content))

您沒有正確使用awaitMessages() ,您需要通過一個filter

const filter = (m) => m.author.id === message.author.id
message.author.dmChannel.awaitMessages(filter)
  .then((collected) => console.log(collected.first().content))

您應該先嘗試創建一個 DM 頻道:

let channel = message.author.dmChannel;
if (!channel) channel = await message.author.createDM();

請注意,createDM() 返回一個 Promise,這將要求您將命令切換到異步 function(如果它已經不是)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM