javascript - TypeError [INVALID_TYPE]:提供的参数不是用户也不是角色
问题描述
我收到此错误:(节点:11624)UnhandledPromiseRejectionWarning:TypeError [INVALID_TYPE]:提供的参数不是用户也不是角色。
这是我的代码:
const sr = message.guild.roles.cache.get(supportrole)
const everyone = message.guild.roles.cache.find((role) => role.name === "@everyone")
c.updateOverwrite(sr, {
SEND_MESSAGE: true,
VIEW_CHANNEL: true
});
c.updateOverwrite(everyone, {
SEND_MESSAGE: false,
VIEW_CHANNEL: false
});
c.updateOverwrite(message.author, {
SEND_MESSAGE: true,
VIEW_CHANNEL: true
});
我该如何解决?
解决方案
这一行:
const everyone = message.guild.roles.cache.find((role) => role.name === "@everyone")
是问题。您将无法在这些条件下找到职位。有趣的是,@everyone 角色与其所在的公会共享相同的 ID。因此,您可以改为使用:
const everyone = message.guild.roles.cache.get(message.guild.id)
推荐阅读
- python - 如何将 GMT 转换为 EDT(转换为秒格式)
- apache - 使用 mod_rewrite 进行内部重定向后提供不区分大小写的文件
- javascript - Javascript:使用键移动到 DIV 中的下一个元素
- android - 在 Windows 10 Home(无 Hyper-V)上安装时出现 Intel HAXM 错误
- rust - 在 nom 5.1.2 中使用位解析器时未能找到正确的类型参数
- google-cloud-platform - gcloud 版本 306.0.0 导致“没有名为 'urllib2' 的模块”错误
- reactjs - reactJS中指定MongoDB数据库连接语句
- python - 以整数形式获取列表迭代的进度
- python - 关于函数和返回变量的一般问题 - python
- swift - swift中类型约束的泛型函数的调用优先级?