我使用 DankMemer Youtube Imgen API 编写了一个代码。当我输入:
,youtube 你好
,它显示:
但是当我标记某人时,它会显示文本和 ID:
有没有办法可以将用户名与文本分开?
let target = message.mentions.users.first() || message.author;
let profilepic = target.avatarURL;
let sentence = args.join(" ");
let url = ` https://dankmemer.services/api/youtube?avatar1=${profilepic}&username1=${target.username}&text=${sentence}`;
message.channel.startTyping();
snekfetch.get(url, {
headers: {
"Authorization": token
}
}).then(async res => {
await message.channel.send({
files: [{
attachment: res.body,
name: `${target.tag}-youtube.jpg`
}]
}).then(() => message.channel.stopTyping());
}).catch(err => console.error(err));
最佳答案
let sentence = args.join(" ");
您在那里加入了参数,我认为其中也包括提到的用户。您唯一需要做的就是删除提及。如果您只想删除第一个提及的内容,请执行以下操作-
if (!target === message.author) {
let toremove = `{@${target.id}}`;
sentence = sentence.replace(toremove, "");
}
在此行之后添加此代码-
let sentence = args.join(" ");
关于javascript - 如何将用户名和 ID 与命令分开?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58037910/