正如标题中所说的那样,我正在尝试使机器人自动发送gif并发送gif,但不在嵌入中。
我收到此错误:The resource must be a string, Buffer or a valid file stream.
有什么帮助吗?我尝试自己编写此代码,因为任何地方都没有教程,而且我陷入了困境。
if(!message.channel.nsfw){ (message.channel.send)
message.channel.send("Please use an NSFW channel for this command."); return;
} else {
if (message.content.startsWith (PREFIX + "stoys")) {
number = 42;
imageNumber = Math.floor (Math.random() * (number - 1 + 1)) + 1;
message.channel.send ( {files: ["./stoys/" + imageNumber + ".gif"]} )
let files = ["./stoys/" + imageNumber + ".gif"]
const embed = new Discord.MessageEmbed()
.attachFiles({attachment: files}).setImage(files)
.setColor(0x7732a8)
.setFooter("?BOT IS IN EARLY-ALPHA TESTING? (Neon#0999)")
message.channel.send(embed);
}
}
}
}
答案 0 :(得分:0)
由于文件是数组,因此setImage不采用数组,而是采用字符串。您将不得不选择数组的一个元素,或者只是通过删除[]周围的数组将其变成字符串。
所以,您的最终结果可能是这些2:
let files = ["./stoys/" + imageNumber + ".gif"]
const embed = new Discord.MessageEmbed()
.setImage(files[0])
let files = "./stoys/" + imageNumber + ".gif"
const embed = new Discord.MessageEmbed()
.setImage(files)
希望我能帮上忙!