You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Discord.js v13.12.0中ActionRowBuilder非构造函数报错求助

问题原因

你使用的discord.js v13.12.0中不存在ActionRowBuilder和SelectMenuBuilder类——这两个是discord.js v14才新增的组件构建器。v13版本对应的组件类是MessageActionRow(用于创建行容器)和MessageSelectMenu(用于创建下拉菜单)。

解决步骤
  1. 修正导入语句
    把原代码中的导入行:
const { ActionRowBuilder, Events, SelectMenuBuilder } = require('discord.js');

替换为:

const { MessageActionRow, MessageSelectMenu } = require('discord.js');

(你的代码里没用到Events,直接删除即可)

  1. 替换组件实例化代码
    在информация命令的逻辑中,将构建组件的类名替换为v13对应版本:
else if (interaction.commandName === 'информация'){
    const row = new MessageActionRow()
            .addComponents(
                new MessageSelectMenu()
                    .setCustomId('select')
                    .setPlaceholder('Nothing selected')
                    .addOptions(
                        {
                            label: 'Select me',
                            description: 'This is a description',
                            value: 'first_option',
                        },
                        {
                            label: 'You can select me too',
                            description: 'This is also a description',
                            value: 'second_option',
                        },
                    ),
            );

        await interaction.reply({ content: 'Pong!', components: [row] });
}

修改完成后,代码就能在discord.js v13.12.0环境下正常运行,下拉菜单也能正确渲染。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 22:35:57