首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TypeError: mention.send不是函数- discord.js

TypeError: mention.send不是函数- discord.js
EN

Stack Overflow用户
提问于 2020-09-14 03:27:07
回答 2查看 191关注 0票数 0

我一直在尝试编写这个不和谐的机器人代码,以便通过DM向某个人发送消息。它应该工作的方式是:tb!send @usernamehere Hi然后这应该发送一个DM消息到@usernamehere说,"Hi“。但是,我得到了一个错误,说的是TypeError: mention.send is not a function。下面是我的代码:

代码语言:javascript
复制
client.on('message', (message) => {
 var msg = message.content.toLowerCase();

 if (message.author.bot) return;

 let mention = message.mentions.users.first().id;

 if (msg.startsWith(prefix + 'send')) {
  console.log('ok');
  if (mention == null) return;
  message.delete();
  var mentionMessage = message.content.slice(8);
  mention.send(mentionMessage);
  message.channel.send('done!');
 }
});
EN

回答 2

Stack Overflow用户

发布于 2020-09-14 04:26:37

变化

代码语言:javascript
复制
let mention = message.mentions.users.first().id;

代码语言:javascript
复制
let mention = message.mentions.users.first();
票数 1
EN

Stack Overflow用户

发布于 2020-09-14 05:11:34

您可以选择使用id或提及

ID

代码语言:javascript
复制
let mention = message.mentions.users.first().id;

if (msg.startsWith(prefix + 'send')) {
 console.log('ok');
 if (mention == null) {
  return;
 }
 message.delete();
 mentionMessage = message.content.split(' ').slice(1);
 client.users.cache.get(mention).send(mentionMessage);
 message.channel.send('done!');
}

或者提到

代码语言:javascript
复制
let mention = message.mentions.users.first();

if (msg.startsWith(prefix + 'send')) {
 console.log('ok');
 if (mention == null) {
  return;
 }
 message.delete();
 mentionMessage = message.content.split(' ').slice(1);
 mention.send(mentionMessage);
 message.channel.send('done!');
}

此外,我将message.content.slice(8)更改为message.content.split(' ').slice(1),以便它可以处理所有没有空格的前缀。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63874737

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档