【问题标题】:Discord.js SetNickname Function Is Not WorkingDiscord.js SetNickname 函数不起作用
【发布时间】:2019-09-23 06:49:54
【问题描述】:

我正在尝试制作一个机器人,它可以赋予角色并为其用户设置昵称。 我的目标是,如果有人在文本频道上键入“-verify SomeNickname”,机器人会将他们的昵称设置为 SomeNickname 并赋予他们特定的角色。

mem.AddRole 正常工作,但 .setNickname 函数没有任何错误。

错误是TypeError: mem.setNickname is not a function

这个重复的线程对我不起作用:Change user nickname with discord.js

我也试过: message.member.setNickname & message.author.setNickname &

client.on('message', message => {
  if (message.content.startsWith('-verify')) {
    message.author.setNickname({
      nick: message.content.replace('-verify ', '')
    });
  }
});

到目前为止。

我的代码是:

module.exports = bot => bot.registerCommand('verify', (message, args)        => {  
  message.delete();
  var title = args.join(' ');
  var mem = message.member;
    mem.addRole('560564037583241227').catch(console.error);
    mem.setNickname(title);
}    

机器人没有任何问题地赋予角色,但它没有为用户设置昵称。 附加信息:Bot 拥有所有权限,我不会尝试更改服务器所有者的昵称。

message.member 对象如下所示:

【问题讨论】:

标签: node.js discord discord.js


【解决方案1】:

通过chat 确定,您当前的代码使用的是discord.io,而不是discord.js。这些库是不同的,所以这就是您的各种问题的根源。

我建议从现在开始使用discord.js,但您可能需要稍微重构一下代码。可以在here 找到文档以供将来参考。

如果您想继续使用discord.io,您可以编辑您的问题以使其更清楚,尽管从我们的对话中您不打算这样做。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-03-02
    • 2022-09-30
    • 2021-10-13
    • 2018-04-24
    • 2018-01-13
    • 1970-01-01
    • 2022-01-05
    • 2020-12-25
    相关资源
    最近更新 更多