javascript - 如果调用命令的用户提到自己,我希望有一个像 return 这样的回调
问题描述
我的代码是
const { GuildMember, GuildMemberRoleManager, DiscordAPIError } = require("discord.js");
module.exports = {
name: 'jail',
description: "This command mutes a member a member!",
execute(message, args, Discord){
let target = message.mentions.users.first();
let memberTarget = message.guild.members.cache.get(target.id);
if (message.author.id = memberTarget.id) {
message.reply('You cant jail yourself dummy'); return;
} else {
}
if(message.member.permissions.has("KICK_MEMBERS")){
} else {message.channel.send(`Become an admin to use this <@${message.member.user.id}>`); return;}
if(target){
memberTarget.roles.set([])
.then(message => {
memberTarget.roles.add('782623155457753099')})
const NewEmbedMessage = new Discord.MessageEmbed()
.setTitle('Jailing')
.addFields(
{name: `You just jailed`, value: `<@${memberTarget.user.id}>`},
{name: `You can unjail people by doing`, value: `arax unjail @user`},
{name: `unjail command coming soon`, value: null}
)
message.channel.send(NewEmbedMessage)
}else{
message.channel.send(`You coudn't jail that member!`);
}
}
}
问题就在这里
let target = message.mentions.users.first();
let memberTarget = message.guild.members.cache.get(target.id);
if (message.author.id = memberTarget.id) {
message.reply('You cant jail yourself dummy'); return;
} else {
}
有什么帮助吗?
解决方案
在 if 语句中,您必须使用==
or ===
。=
是否可以设置变量的值。所以只要改变这个:
if (message.author.id = memberTarget.id)
进入这个:
if (message.author.id === memberTarget.id)
推荐阅读
- python - 如何使 2 个 while 循环在 python turtle 中同时工作
- javascript - react this.state中的方括号[]未定义,数据未呈现
- docker - 由于守护程序中的错误,docker容器不断重启
- r - Pivot_wider 对发布表使用多个变量
- python - Pygame:添加一个 Escape 键以使用秒表功能退出整个游戏
- flutter - 有没有办法根据指定的 url 将 Flutter Web 应用程序重定向到特定屏幕?
- android - WorkManager + Hilt 失败
- python - 如何在 Cython 中有效地使用 Python 风格的整数?
- firebase - 带有 Google 操作的 Firebase 存储
- reactjs - 如何在反应中从api调用表单提交重定向