簡體   English   中英

如何使其僅在其准確時才響應(Discord.JS)

[英]How to make it so it only respond if its exact (Discord.JS)

我正在這樣做,所以如果我輸入 @Wide#9256 它會響應

這是我的代碼:

if (message.mentions.members.first() !== undefined) {

    if (message.mentions.members.first().id === bot.user.id) { 

        const embed = new Discord.MessageEmbed()
        .setTitle("Prefix")
        .setDescription('My Prefix is "!"')
        .setFooter('Type !help for more information')
        .setThumbnail(bot.user.displayAvatarURL())
        .setColor('RANDOM')
        message.channel.send(embed)
  
   
  
    }
  
   }

但是在這段代碼中,如果我說“嘿@Wide#9256 h”,它也會響應,我希望它響應只有“@Wide#9256”而不是別的。

我試過了

if (message.content === message.mentions.members.first().id === bot.user.id)

不起作用,提前謝謝你

更正的代碼:

    if(message.mentions.members.first() && message.content.split(' ').length === 1) {
        // Your code here
    }

這個怎么運作:

message.content.split(' ')將消息的所有部分作為單獨的元素返回一個數組,由' '分隔。 更多信息: https://www.w3schools.com/jsref/jsref_split.asp

在這種情況下,您只需將消息內容直接與原始提及格式 ( <@ID> ) 進行比較

// this leaves no spaces for anything before or after the mention
if (message.content === bot.user.toString()) { // generates mention format
  // ...
};

暫無
暫無

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

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