【发布时间】:2019-11-03 22:16:54
【问题描述】:
我一直想在用户按下 Check 或 X 的反应时创建一个事件。但是,当我使用该函数时,我收到一个错误消息对象不存在它。
我已经从 awaitReactions 回到了这个,但它没有工作。
编辑:
我对 messageSent 对象做了一个console.log,我得到了这个Promise { <pending> }
var messageSent = user.send({embed})
.then(function (message) {
message.react('✅')
message.react('❎')
});
messageSent.createReactionCollection(r => ['✅','❎'].includes(r.emoji.name))
.on('collect', r => {
if (r.emoji.name == '✅') {
user.send("Verified! ✅")
} else if (r.emoji.name == '❎') {
user.send("Canceled! ❎")
}
});
}
TypeError: messageSent.createReactionCollection is not a function
at app.post (C:\Users\teddy\Desktop\Verify\app.js:46:25)
at Layer.handle [as handle_request] (C:\Users\teddy\Desktop\Verify\node_modules\express\lib\router\layer.js:95:5)
at next (C:\Users\teddy\Desktop\Verify\node_modules\express\lib\router\route.js:137:13)
at Route.dispatch (C:\Users\teddy\Desktop\Verify\node_modules\express\lib\router\route.js:112:3)
at Layer.handle [as handle_request] (C:\Users\teddy\Desktop\Verify\node_modules\express\lib\router\layer.js:95:5)
at C:\Users\teddy\Desktop\Verify\node_modules\express\lib\router\index.js:281:22
at Function.process_params (C:\Users\teddy\Desktop\Verify\node_modules\express\lib\router\index.js:335:12)
at next (C:\Users\teddy\Desktop\Verify\node_modules\express\lib\router\index.js:275:10)
at expressInit (C:\Users\teddy\Desktop\Verify\node_modules\express\lib\middleware\init.js:40:5)
at Layer.handle [as handle_request] (C:\Users\teddy\Desktop\Verify\node_modules\express\lib\router\layer.js:95:5)
【问题讨论】:
-
它看起来像一个错字。尝试使用
messageSent.createReactionCollector而不是messageSent.createReactionCollection -
我收到“messageSent.createReactionCollector 不是函数”
-
我可能已经修复了它,由于某种原因它没有返回消息的对象,所以我将
messageSent = message;添加到 .then
标签: javascript node.js express discord.js