Reputation: 43
I use module to create the command and then I want to use embed massage on there.There are my code
const { MessageEmbed } = require('discord.js')
module.exports = {
data: new SlashCommandBuilder()
.setName('info')
.setDescription('Check info'),
data: new MessageEmbed()
.setTitle('Hello'),
async execute(interaction) {
await interaction.reply(`User info ${interaction.user.tag}\n Userid${interaction.user.id}\n Create Time ${interaction.user.createdAt}`);
},
}
When I run the command,I get this.How I can fix it
0.name[BASE_TYPE_REQUIRED]: This field is required
0.type[NUMBER_TYPE_COERCE]: Value "rich" is not int.
rawError: {
code: 50035,
errors: { '0': [Object] },
message: 'Invalid Form Body'
}
Upvotes: 1
Views: 625
Reputation: 101
You can try this:
const { MessageEmbed } = require('discord.js')
module.exports = {
data: new SlashCommandBuilder()
.setName('info')
.setDescription('Check info'),
async execute(interaction) {
let embed = new MessageEmbed()
.setTitle("Title...")
.setDescription("Description...")
await interaction.reply({ embeds: [embed] });
},
}
Upvotes: 1
Reputation: 737
You are declaring the data
key twice, which is probably what you don't want to do. Try this:
const { MessageEmbed } = require('discord.js')
module.exports = {
data: new SlashCommandBuilder()
.setName('info')
.setDescription('Check info'),
async execute(interaction) {
await interaction.reply({
embeds: [
new MessageEmbed().setTitle("Title").setDescription("Description...")
]
});
},
}
Upvotes: 0