首页 > 解决方案 > 斜线命令未在控制台中列出 (discord.js)

问题描述

我最近一直在使用 discord.js 来制作斜杠命令,但打错了。我没有让它说 /help,而是让它说 /hlep。我试图通过使用找到它的ID console.log(client.api.applications(client.user.id).commands.get()),但它只是Promise { <pending> }在控制台中说,我不知道该怎么做。

标签: javascriptnode.jsdiscord.jscommandslash

解决方案


异步client.api.applications(client.user.id).commands.get()一样,它返回一个Promise而不是一个对象。

来自 MDN:

Promise 是在创建 Promise 时不一定知道的值的代理。它允许您将处理程序与异步操作的最终成功值或失败原因相关联。

一个未决的承诺可以用一个值来实现,也可以用一个原因(错误)拒绝。

在 Promise 实现时使用该.then函数运行代码:

client.api.applications(client.user.id).commands.get().then((result) => {
    console.log(result);
    // You may also put other code here to be run when it is fulfilled.
});

...或在异步函数中使用它,如下所示:

let result = await client.api.applications(client.user.id).commands.get();
console.log(result);

推荐阅读