Discord.js 实现多行Embed Description的方法咨询
Discord.js 多行Embed Description实现方案
Discord.js的Embed Description原生支持换行效果,无需额外依赖,以下是两种常用实现方案:
方案1:使用模板字符串(推荐)
直接使用ES6模板字符串,换行编写的内容会自动对应Embed中的换行效果:
const { EmbedBuilder } = require('discord.js'); // 构建多行描述Embed const multiLineEmbed = new EmbedBuilder() .setTitle('多行描述示例') .setDescription(`第一行展示内容 第二行展示内容 可以直接留空行实现段落分隔,下方就是空行 空行后的内容,也可以直接混用Discord支持的markdown语法,比如*斜体*、**粗体**、~~删除线~~`) .setColor('#5865F2'); // 发送Embed示例 message.channel.send({ embeds: [multiLineEmbed] });
方案2:使用转义换行符\n
如果使用普通字符串拼接,插入\n即可实现换行:
// 拼接多行描述内容 const descriptionText = "第一行内容\n第二行内容\n\n空行后的第三行内容"; const multiLineEmbed = new EmbedBuilder() .setTitle('换行符实现示例') .setDescription(descriptionText) .setColor('#5865F2');
注意事项
- Embed Description总长度上限为4096字符,超出会触发报错,内容过长时建议做截断或者拆分到多个Embed Field中展示
- Description内支持嵌入Discord原生支持的列表、引用、代码块等markdown格式,示例如下:
const formattedEmbed = new EmbedBuilder() .setDescription(`### 功能说明 - 功能A:支持xxx操作 - 功能B:支持xxx查询 > 该功能仅管理员可调用 \`\`\` // 调用示例 /query id:123 \`\`\``)
内容的提问来源于stack exchange,提问作者SefovskiLeaks
相关产品推荐
相关产品推荐

