如何在我的 discord 机器人上创建可选字段嵌入字段?

How can i createoptional fields embed field on my discord bot?

这是我的简单代码。我的 slesh 命令嵌入生成器需要可选字段(fd、fdd)。我该怎么办?empty fields no delete so.if 我的字段值为空,则不显示,如果该字段有值则添加嵌入。可选值。

    const desc = options.getString("leírás");
    const fd1 = options.getString("field1");
    const fd2 = options.getString("field2");
    const fd3 = options.getString("field3");
    const fdd1 = options.getString("fielddesc1");
    const fdd2 = options.getString("fielddesc2");
    const fdd3 = options.getString("fielddesc3");
    
    //cache.find(role => role.id === "967822275355246732");A

    const Response = new MessageEmbed()
    .setColor("RANDOM")
    .setDescription(`${interaction.member} létrehozott egy <@&963762743150796810>-t, **${type}** kategóriával.`)
    .setThumbnail('https://media.discordapp.net/attachments/967828295121006592/969690574674354337/958794200999145513.png')
    .addField("⟬Cím⟭", `${title}`)
    .addField("⟬Leírás⟭", `${desc}`)
    .addField(`${fd1}`, `${fdd1}`)
    .addField(`${fd1}`, `${fdd1}`)
    .addField(`${fd2}`, `${fdd2}`)
    .addField(`${fd3}`, `${fdd3}`)
    .setFooter({text: "*`Telihold, Tele mosoly :)`*"})
    .setTimestamp()
    const message = await interaction.reply({embeds: [Response], fetchReply: true});
    message.react('')

        .then(() => message.react('❤️'))
        .catch(error => console.error('Nem tudom betölteni az egyik hangulatjelet', error));
}

}

///我试过这种方式,但不好///

    .addField("⟬Cím⟭", `${title}`)
    .addField("⟬Leírás⟭", `${desc}`)
    .setFooter({text: "*`Telihold, Tele mosoly :)`*"})
    .setTimestamp()
    const message = await interaction.reply({embeds: [Response], fetchReply: true});
    message.react('')
        .then(() => message.react('❤️'))
        .catch(error => console.error('Nem tudom betölteni az egyik hangulatjelet', error));
        if (`${fd1}`)
        Response.addField(`${fd1}`, `${fdd1}`)
        if (`${fd2}`)
        Response.addField(`${fd1}`, `${fdd1}`)
        if (`${fd3}`)
        Response.addField(`${fd1}`, `${fdd1}`)
        return interaction.reply({embeds: [Response], fetchReply: true});

首先使用if语句检查变量是否存在。

let Response = new MessageEmbed()
        .setColor("RANDOM")
        .setDescription(` egy <@&963762743150796810>-t, kategóriával.`)
        .setThumbnail('https://media.discordapp.net/attachments/967828295121006592/969690574674354337/958794200999145513.png')
        .addField("⟬Cím⟭", `abc`)
        .addField("⟬Leírás⟭", `def`)
        .setFooter({ text: "*`Telihold, Tele mosoly :)`*" })
        .setTimestamp()

if (fd1) {
    Response.addField(`${fd1}`, `${fdd1}`)
}

这样你就可以避免在未设置变量时说“null”。