问题描述
我最近一直在使用 discord.js 来制作斜杠命令,但是打错了。我没有说 /help,而是说 /hlep。我试图通过使用 console.log(client.api.applications(client.user.id).commands.get())
找到它的 ID,但它只是在控制台中说 Promise { <pending> }
,我不知道该怎么做。
解决方法
由于 client.api.applications(client.user.id).commands.get()
是 asynchronous,它返回一个 Promise 而不是一个对象。
来自 MDN:
Promise 是在创建 Promise 时不一定知道的值的代理。它允许您将处理程序与异步操作的最终成功值或失败原因相关联。
挂起的承诺可以用一个值来实现,也可以用一个原因(错误)来拒绝。
要么使用 .then
函数,在 Promise 实现时运行代码:
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);