我想向数据库添加信息,但在不和谐中收到“此交互失败”错误
使用better-sqlite3, discord.js v13
对于代码,我使用了互联网上的一些教程和指南,我认为其中一些可能干扰了已经编写的内容
const { MessageActionRow, MessageButton, MessageEmbed } = require('discord.js');
const db = require("better-sqlite3")("../../main.db")
module.exports = {
name: 'test',
description: "test buy",
options: [
{
name: 'buy',
description: 'ซื้อสคริป',
type: "SUB_COMMAND",
options: [
{
name: "link",
description: "ลิ้งซองเงิน 99 บาท",
type: "STRING",
required: true,
}
]
},
],
run: async(client, interaction, args) => {
if (interaction.options.getSubcommand() === 'buy') {
const button = new MessageActionRow()
.addComponents(
new MessageButton()
.setCustomId('confirm')
.setLabel('c')
.setStyle('SUCCESS'),
new MessageButton()
.setCustomId('cancel')
.setLabel('b')
.setStyle('DANGER'),
new MessageButton()
.setURL('https://www.youtube.com/')
.setLabel('a')
.setStyle('LINK'),
);
const embed = new MessageEmbed()
.setColor('#FF0000')
.setTitle('ShuShi')
.setDescription('info')
await interaction.reply({ephemeral: true, embeds: [embed], components: [button] });
const filter = i => i.user.id === interaction.member.id;
const collector = interaction.channel.createMessageComponentCollector({
filter,
time: 600000,
max: 1
});
collector.on('collect', async i => {
collector.stop();
if (i.customId === 'confirm') {
db.prepare(`INSERT INTO discorddata VALUES(:id,:own)`).run({
id: interaction.user.id,
own: 'true'
})
}
})
}
}}