首页 > 解决方案 > Discord.js 机器人的代码响应错误“TypeError:”

问题描述

我正在测试使用Discord.js为 Discord Bot 发送嵌入消息,Discord.js基本上是一个node.js模块,用于与 Discord 的 API 交互。这是我用于机器人发送嵌入消息的代码:

const Discord = require('discord.js');
const embed = new Discord.RichEmbed()
    .setTitle("This is your title, it can hold 256 characters")
    .setAuthor("Author Name", "https://i.imgur.com/lm8s41J.png")
    .setColor(0x00AE86)
    .setDescription("This is the main body of text, it can hold 2048 characters.")
    .setFooter("This is the footer text, it can hold 2048 characters", "http://i.imgur.com/w1vhFSR.png")
    .setImage("http://i.imgur.com/yVpymuV.png")
    .setThumbnail("http://i.imgur.com/p2qNFag.png")
    .setTimestamp()
    .setURL("https://discord.js.org/#/docs/main/indev/class/RichEmbed")
    .addField("This is a field title, it can hold 256 characters",
        "This is a field value, it can hold 1024 characters.")
    .addField("Inline Field", "They can also be inline.", true)
    .addBlankField(true)
    .addField("Inline Field 3", "You can have a maximum of 25 fields.", true);

  message.channel.send({embed});

当我运行代码时,我在 Visual Studio Code IDE 中收到此错误:

TypeError: (中间值).setTitle(...).setAuthor(...).setColor(...).setDescription(...).setFooter(...).setImage(...).setThumbnail (...).setTimestamp(...).setURL(...).addField(...).addField(...).addBlankField 不是函数

标签: javascriptdiscorddiscord.js

解决方案


当您查看文档时,课堂上没有addBlankField()功能,请检查您的版本。 MessageEmbeddiscord.js

从 v12.0.0 开始,它们更改RichEmbedMessageEmbed.


推荐阅读