所以我尝试为我的机器人添加角色命令:
const lists = [
{
id: '0',
title: 'LIST 1',
cardItems: [
{ id: '0', text: 'Card 1' },
{ id: '1', text: 'Card 2' },
{ id: '2', text: 'Card 3' },
],
},
];
const removeCardItem = (list, listItemId, cardItemId) => {
const arr = [...list];
// get list item by id
const item = arr.find(listItem => listItem.id === listItemId);
// remove card item by id if found
if(item)
item.cardItems = item.cardItems.filter(cardItem =>
cardItem.id !== cardItemId
);
return arr;
}
console.log( removeCardItem(lists, '0', '1') );
但是没有用,bot没有添加角色或发送消息,也没有错误,是不是我做错了什么?
答案 0 :(得分:1)
很抱歉迟到了,但答案很简单。输入命令 use 时,您的代码很好
(前缀)@user 提及@role
例如。 !addrole @huss_a @example
我还建议将 @commands.has_permissions 引用放在开头,这样只有管理员才能使用它,而用户不能像这样给自己任何他们想要的角色:
@bot.command()
@commands.has_permissions(manage_roles=True)
async def addrole(ctx, member: discord.Member, role: discord.Role):
await member.add_roles(role)
await ctx.send(f"{member} now had the {role} role")
您也可以使用此代码:
@bot.command()
@commands.has_permissions(manage_roles=True)
async def addrole(ctx, role: discord.Role, user: discord.Member):
await user.add_roles(role)
await ctx.send(f"{role.mention} was added to {user.mention})