node.js - Discord.js - Cannot edit a message
问题描述
I have a problem. Im trying to edit a message and I'm getting an error. How can i fix this?
TypeError: polje.edit is not a function
My code :
if (msg === "test") {
let polje = message.channel.send(poljeprazno);
try {
var odgovor = await message.channel.awaitMessages(message2 => message2.content === "a1", {
maxMatches: 1,
time: 5000,
errors: ['time']
});
if (odgovor.first().content === "a1") {
if (poljeprazno[0][0] != "⬜") return message.channel.send("Zasedeno");
poljeprazno[0][0] = "⭕";
polje.edit(poljeprazno);
}
}catch (err) {
console.error(err);
return message.channel.send("Ničesar nisem dobil").then(d_msg => { d_msg.delete(5000); });
}
}
解决方案
You forgot to use await
when sending the message, and so polje
is a Promise<Message>
, instead of an actual Message
. You can just write it like this:
let polje = await message.channel.send(poljeprazno)
推荐阅读
- deployment - 步行骨架的强制性步骤是什么?
- scala - 使用 zipWithIndex 对列表项进行分组
- vb.net - 我应该在 vb.net 中使用什么来代替 Oftype?
- ajax - 将 AJAX 分页添加到自定义帖子类型
- hybris - 如何在hybris.中创建订单级促销?
- javascript - 在 styled-components 中传递 window.onload 的函数
- swift - iphoneX 不调用 prefersStatusBarHidden
- ios - 应用商店应用的 Stripe 支付网关
- php - 一些图片无法在 html 中显示
- jquery - 侧栏打开时隐藏和页脚jquery