TypeError: Cannot read properties of undefined (reading 'path') discord.js
Я хочу сделать картинку приветствия, когда новый пользователь присоединяется к моему серверу.
У меня есть index.js и generateImage.js, где генерируется это изображение.
Это generateImage.js
const generateImage = async (member) => {
let username = member.user.username
let discrim = member.user.discriminator
let avatarURL = member.user.displayAvatarURL({format: "png", dynamic: false, size: av.size})
const canvas = Canvas.createCanvas(dim.width, dim.height)
const ctx = canvas.getContext("2d")
const backimg = await Canvas.loadImage(clanimage)
ctx.globalAlpha = 0.55
ctx.drawImage(backimg, 0, 0, dim.width, dim.height)
const background = await Canvas.loadImage(wtimage);
ctx.save()
ctx.beginPath();
ctx.moveTo(bg.x + bg.radius, bg.y);
ctx.lineTo(bg.x + 999 - bg.radius, bg.y);
ctx.arcTo(bg.x + 999, bg.y, bg.x + 999, bg.y + bg.radius, bg.radius);
ctx.lineTo(bg.x + 999, bg.y + 554 - bg.radius);
ctx.arcTo(bg.x + 999, bg.y + 554, bg.x + 999 - bg.radius, bg.y + 554, bg.radius);
ctx.lineTo(bg.x + bg.radius, bg.y + 554);
ctx.arcTo(bg.x, bg.y + 554, bg.x, bg.y + 554 - bg.radius, bg.radius);
ctx.lineTo(bg.x, bg.y + bg.radius);
ctx.arcTo(bg.x, bg.y, bg.x + bg.radius, bg.y, bg.radius);
ctx.closePath();
ctx.clip();
ctx.drawImage(background,bg.x, bg.y, 999, 554);
ctx.restore();
ctx.globalAlpha = 1
const avimg = await Canvas.loadImage(avatarURL)
ctx.save()
ctx.beginPath()
ctx.arc(av.x + av.size / 2, av.y + av.size / 2, av.size / 2, 0, Math.PI * 2, true)
ctx.closePath()
ctx.clip()
ctx.drawImage(avimg, av.x, av.y)
ctx.restore()
ctx.fillStyle = "white"
ctx.textAlign = "center"
ctx.globalAlpha = 1
const attachment = {files: [canvas.toBuffer(), "welcome.png"]}
return attachment
}
А это index.js
const welcomeChannelId = "some_id";
import generateImage from "./commands/generateImage.js";
client.on("guildMemberAdd", async (member) => {
const img = await generateImage(member)
member.guild.channels.cache.get(welcomeChannelId).send({
content: `Welcome, <@${member.id}>`,
files: [img]
})
})
Я получаю ошибку только тогда, когда files: [img] находится в коде, поэтому мне кажется, что проблема здесь. Возможно, в discord.js есть какие-то новые синтаксические вещи, о которых я не знал.