微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Quick.db discord.js

如何解决Quick.db discord.js

我正在执行一个userinfo命令,该命令从.db文件返回项目,但它以 [object Object] 返回。我该如何使它返回名称? 这是我的代码

const { MessageEmbed } = require(`discord.js`)
const db = require(`quick.db`);

exports.execute = async(client,message,args) => {
    let member = message.mentions.members.first() || message.member;
    let hasstarted = db.fetch(`started_${member.id}`)
    let bal = db.fetch(`money_${member.id}`)
    let items = db.get(`items_${member.id}`)
    let displayItems;
    let started;

    if (bal === null) bal = 0;
    if (items === null) {
        displayItems = 'This user has no items!';
    } else {
        displayItems = items;
    }
    if (hasstarted === null) {
        started = 'False'
    } else {
        started = 'True'
    }

    const userEmbed = new MessageEmbed()
    .setTitle(member.displayName + '#' + member.user.discriminator + "'s Profile")
    .addField(`Balance:`,bal)
    .addField(`Items:`,displayItems)
    .addField(`Has Started:`,started)
    .setFooter(`Requested By: ${message.author.username}`,message.author.avatarURL({ dynamic:true }))
    .setimage(member.user.avatarURL({ dynamic:true }))
    message.channel.send(userEmbed)
}

exports.help = {
    name: 'userinfo',aliases: ['user'],usage: 'userinfo <user>'
}

解决方法

Discord不发送对象,而是字符串。如果数据是对象,则应尝试:

// Send this,not object:
c.send(JSON.stringify(object)) // Also,you should wrap in a code block with the JSON language,it'll look much nicer

如果这是一个承诺,您应该尝试:

c.send(await promise)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。