#javascript #discord.js
Вопрос:
Я пытаюсь просканировать внутреннюю часть описания встраивания «читатель встраивания», и я продолжаю получать эту ошибку и не могу ее исправить. Это сработало на discord.js V12, но я переключился на v13, чтобы добавить его в другого бота.
const { Client, Intents} = require('discord.js');
const Discord = require('discord.js');
const client = new Client({ intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES] });
let prefix = ";";
let badwords = ["IP Logger", "grabify", "dlscord.com"];
client.on('ready', () => {
console.log('Ready!');
});
client.on("message", async message => {
const detectedEmbed = new Discord.MessageEmbed()
.setColor('#0099ff')
.setTitle('Detected')
.setURL('https://discord.js.org/'')
.setAuthor("apphx the ass grabber")
.setDescription('IP Logger Detected')
.setThumbnail('https://kinsta.com/wp-content/uploads/2017/09/external-ip-address-1-1024x512.png'')
var content = message.content;
var stringToCheck = content.replace(/s /g, '').toLowerCase();
if(message.content.toLowerCase().includes( badwords))
message.channel.send(detectedEmbed);
else {
for (var i = 0; i < badwords.length; i ) {
if (message.embeds[i].title.includes(badwords) amp;amp; message.embeds[i].title.includes(badwords[i])){
message.delete();
message.channel.send(detectedEmbed)
break
}
}
}
})
client.login(verysecrettoken');
Ошибка: https://pastebin.com/tPsUdCjB
Ответ №1:
Разве это не должно быть:
for (var i = 0; i < message.embeds.length; i ) {
Ничто не мешает мне превысить количество вложений в сообщение, и поэтому, когда это происходит, message.embeds[i] не существует.
Похоже, вы хотели повторить массив плохих слов для каждого встраивания в сообщение.
for (var i = 0; i < message.embeds.length; i ) {
for (var j = 0; j < badwords.length; j ) {
if (message.embeds[i].title.includes(badwords[j])){
message.delete();
message.channel.send(detectedEmbed)
break
}
}
}
Кроме того, в v13 вы, вероятно, должны иметь:
message.channel.send({ embeds: [detectedEmbed] })