每1分钟编辑嵌入消息| Discord.js V12

时间:2020-10-18 17:14:29

标签: javascript node.js discord discord.js bots

我希望我的机器人发送一条消息,然后每分钟用以下值对其进行编辑:

client.users.cache.size

我尝试了以下代码,但不幸的是,它没有用。

const timejkdfg = new MessageEmbed().setTitle("testing").addField(":", client.users.cache.size);
message.channel.send(timejkdfg).then((msggg) => {
    const timejk1dfg = new MessageEmbed().setTitle("testing").addField(":", client.users.cache.size);
    setInterval(function () {
        msggg.edit(`${timejk1dfg}`);
    }, 60000);
});

它没有显示缓存的用户数,而是显示“ [object Object]”。

1 个答案:

答案 0 :(得分:0)

您当前的代码每分钟运行一次,但是没有达到您想要的效果。这是因为您在timejk1dfg函数外部创建了setInterval常量。这意味着它只会被创建一次,此后它始终是相同的,而不是您真正想要的。修复非常简单,只需将timejk1dfg移至Interval并从.edit中删除字符串即可。

const embed = new Discord.MessageEmbed().setTitle("testing").addField(":", client.users.cache.size);
message.channel.send(embed).then((msg) => {
    setInterval(function () {
        const embed = new Discord.MessageEmbed().setTitle("testing").addField(":", client.users.cache.size);
        msg.edit(embed);
    }, 6000);
});

注意:我使您的命名更加传统

关于您的client.users.cache.size显示[object Object]的问题,我无法复制。我建议使用console.log(client.users.cache)来查看其中的实际内容。