javascript - 锁定命令 discord.js v12
问题描述
我正在尝试发出锁定命令,这是我的代码:
module.exports = {
name: "lock",
description: "Lock",
async run(client, message, args) {
if (!message.member.hasPermission("KICK_MEMBERS")) return message.channel.send('You can\'t use that!')
function lock(message) {
let channel = message.channel;
let roles = message.guild.roles;
let testRole = roles.find('Verified');
channel.overwritePermissions(
testRole, {
'SEND_MESSAGES': false
},
'Competitive has Ended'
)
lock(message).catch(error => console.log(error));
}
message.channel.send('Channel Locked')
}
}
但是,在运行此代码时,我没有得到机器人的响应,它也没有执行该功能。我也没有收到任何错误。玩具能帮帮我吗?提前致谢!
解决方案
你定义了一个函数lock
,但是你在错误的地方调用它。您尝试在函数本身内调用 lock 函数,但这是行不通的。如果您将代码更改为以下内容,它应该可以工作:
if (!message.member.hasPermission("KICK_MEMBERS")) return message.channel.send('You can\'t use that!')
function lock(message) {
let channel = message.channel;
let roles = message.guild.roles;
let testRole = roles.find('Verified');
channel.overwritePermissions(
testRole, {
'SEND_MESSAGES': false
},
'Competitive has Ended'
)
}
lock(message).catch(error => console.log(error));
message.channel.send('Channel Locked')
推荐阅读
- android - gridview.extent 不会在颤动中滚动
- sql - 在脚本中重用相同的 sql 子句
- javascript - 如何按一个参数升序调用方法?
- angular - 无法理解这个错误(GET http://makeappdev.xyz/1e6ab715a3a95d4603.js net::ERR_NAME_NOT_RESOLVED)
- javascript - 将客户端时间设置为服务器时间并实时更新
- android - 内联函数导致单元测试代码覆盖率报告出错
- python - 使用 For-Else 会执行这两个条件。我该如何解决?
- c - 为什么我们在函数名上使用 & 符号?
- java - 无法理解何时必须将 return 语句与递归关联使用
- javascript - 如何使用或不使用javascript在数字之间添加垂直线?