[英]add roles to discord member
幾天前它沒有給出錯誤,現在它奇怪地給出了錯誤。
當我添加代碼以添加或刪除角色時,出現此錯誤。
我的代碼:
let member = message.mentions.members.first();
let role = message.guild.roles.get("707628035498836069");
let role1 = message.guild.roles.get("769919065551929385");
member.addRole(role);
member.removeRole(role1);
錯誤代碼:
(node:16668) UnhandledPromiseRejectionWarning: TypeError: Supplied parameter was neither a Role nor a Snowflake.
at GuildMember.removeRole (C:\Users\user\Desktop\discordjssss\node_modules\discord.js\src\structures\GuildMember.js:516:38)
at Object.module.exports.baslat (C:\Users\user\Desktop\discordjssss\komutlar\genel\jaildenm.js:22:10)
at AdvancedClient.<anonymous> (C:\Users\user\Desktop\discordjssss\node_modules\discordjs-advanced\src\client.js:549:5)
at processTicksAndRejections (internal/process/task_queues.js:97:5)
(node:16668) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
(node:16668) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
在 discord.js v.12 中,您需要使用稍微不同的語法來查找和添加角色。
您可以通過訪問新的cache
對象來查找角色。
message.guild.roles.cache.get('your ID here');
您現在在GuildMemberRoleManager
添加或刪除角色。
member.roles.add(role here);
member.roles.remove(role here);
需要說明的是,不需要先獲取角色對象。 您可以簡單地使用 ID。 但是,如果您先獲得該角色,則可以檢查它是否確實存在。 但這既不在這里也不在那里。
注意:您最初的問題是找不到您的角色。 要么是因為角色不存在,要么是 ID 錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.