javascript - Discord command not doing what I want it to do - discord.js
问题描述
Here is my code, if I do !say hi, the bot would delete my message and write "say hi" and I don't know how to fix it
if (message.content.startsWith("!say")) {
if (message.deletable) {
message.delete();
}
if (args.length < 1) {
return message.reply("Nothing to say").then(m => m.delete(5000));
}
message.channel.send(args.join(" "));
}
解决方案
正如评论已经指出的那样,试试下面的剪断,你刚刚剪掉了第一部分。如果你输入 "!say hi" args 变量看起来像这样 ["!say","hi"] 和 args.slice(1) 你删除了第一部分,所以你删除了 "!say" 并且 "hi" 是args 中剩下的唯一参数。然后,您可以将消息发送到带有剩余参数的通道。
if (message.content.startsWith("!say")) {
if (message.deletable) {
message.delete();
}
if (args.length < 1) {
return message.reply("Nothing to say").then(m => m.delete(5000));
}
message.channel.send(args.slice(1).join(" "));
}
对不起我的英语不好:D
推荐阅读
- autodesk-forge - Forge Viewer - 在使用查看器的实例树时获取错误的 xyz 坐标
- jenkins - 在项目的 SCM 之外集中 Jenkinsfile?
- localhost - CrossStorageClient 无法在 IE 11 中连接
- c++ - 初始值设定项列表中的非常量表达式不能从类型“int”缩小到“unsigned long long”
- python - 将迭代解决方案转换为递归解决方案
- javascript - 如何根据对象属性按照我选择的顺序对javascript中的数组中的对象进行排序?
- javascript - 从 JSON 响应中转义双引号
- tensorflow - 从 tensorflow 冻结图转换为 tflite 以进行 android 推理
- c++ - 使用“删除”功能删除重复元素
- java - Java 日期时间解析异常:无法解析文本