每 1 分钟编辑嵌入消息 |不和谐.js V12

Posted

技术标签:

【中文标题】每 1 分钟编辑嵌入消息 |不和谐.js V12【英文标题】:Edit embed message per 1min | Discord.js V12 【发布时间】:2021-02-01 13:36:34 【问题描述】:

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

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】:

您当前的代码每分钟运行一次,但没有达到您想要的效果。那是因为您在 setInterval 函数之外创建了 timejk1dfg 常量。这意味着它只会被创建一次,之后它总是一样的,而不是你想要的。修复非常简单,只需将 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) 看看里面到底有什么。

【讨论】:

以上是关于每 1 分钟编辑嵌入消息 |不和谐.js V12的主要内容,如果未能解决你的问题,请参考以下文章

Discord js v12 如果有人对嵌入做出反应,则发送消息

如何将随机设置的单词值分配给变量 Javascript? (不和谐 JS v12H

嵌入消息(不和谐)

如何让 discord bot 等待回复 5 分钟然后发送消息?使用不和谐的 js

使用 Discord py 使用 Discord 按钮编辑嵌入描述

Discord.js v12 角色查询