You need to enable JavaScript to run this app. Discord.js音乐帮助命令Embed无法正确调用Config前缀的问题求解
优惠活动
大模型
产品
解决方案
定价
更多

Discord.js音乐帮助命令Embed无法正确调用Config前缀的问题求解

问题核心原因

你跑代码出异常、嵌入内容显示不对的核心是Discord.js 的 MessageEmbed.addField() 方法调用语法错了,和自定义前缀的注入逻辑本身没关系。
Discord.js 的 addField() 不支持直接塞带name、value属性的对象数组,官方要求这个方法每次接三个独立参数:

  • 字段的展示标题
  • 字段的实际内容
  • 可选的inline布尔值,控制字段是不是以内联双列形式展示

你现在把两个命令字段全打包成对象,直接塞到同一个addField的参数里,框架根本识别不了参数结构,自然会报错。

修正后的可用代码

把原来单addField塞两个对象的写法,拆成两次独立的addField调用,字符串拼接也优化得更整洁,保证config里存的自定义前缀能正常嵌到每个命令示例前面:

const Discord = require('discord.js');
const config = require('../config/config.json')

module.exports = {
    name: 'musichelp',
    aliases: ['mhelp'],
    description: "Shows you all the music commands!",
    async execute(client, message, args, Discord, cmd) {
        const musicEmbed = new Discord.MessageEmbed()
            .setColor('#8c88fc')
            .setTitle("Music Help")
            // 播放命令字段
            .addField(
                "Play Command!",
                `${config.prefix}play 
                **Aliases** = 'p' 

                ***Description*** 
                The play command plays music in a voice channel (You need to be in a vc to be able to use this command!)`,
                true
            )
            // 离队命令字段
            .addField(
                "Leave Command!",
                `${config.prefix}leave 
                **Aliases** = 'dc', 'disconnect' 

                The leave command leaves the current voice channel it's in (You need to be in a vc to be able to use this command)`,
                true
            )
            .setFooter("It's recommended to set the volume of the bot to between 35 - 50!");

        await message.reply(musicEmbed);
    }
}
后续适配提示
  • 现在的结构里,每个命令示例的前缀都是直接从config取的,等你后续做完整的自定义前缀系统时,只要把这里的config.prefix替换成读取当前服务器专属前缀的逻辑就行,不用大改嵌入的整体排版
  • 两次addField都传了true作为第三个参数,会保持原来的双列内联布局,不会因为拆分调用打乱你之前设计的展示效果

内容的提问来源于stack exchange,提问作者Jamie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.11.04 12:36:06