【问题标题】:Using result of awaitMessages outside try discord.js在尝试 discord.js 之外使用 awaitMessages 的结果
【发布时间】:2020-11-11 14:59:29
【问题描述】:

我正在使用 awaitMessages 来获取对提示的消息响应。 这是我当前的代码

// other code... all fine
try {
  const response = await message.channel.awaitMessages(
    message2 => message2.content > 0 && message2.content < 11,
    {
      max: 1,
      time: 20000,
      errors: ['time'],
    },
  );
}
catch (err) {
  console.log(err);
  return message.channel.send('No value given, or value was invalid.');
}
const reply = parseInt(response.first().content);
// gives error right there ^^^

它给出了错误

ReferenceError: response is not defined

如果我添加一行将response 定义为null,它仍然不起作用。

【问题讨论】:

    标签: node.js variables async-await discord.js


    【解决方案1】:

    您需要在 try-catch 范围之外定义response

    let response;
    try {
        response = await message.channel.awaitMessages(
                message2 => message2.content > 0 && message2.content < 11, {
                max: 1,
                time: 20000,
                errors: ['time']
            });
    } catch (err) {
        console.log(err);
        return message.channel.send('No value given, or value was invalid.');
    }
    const reply = parseInt(response.first().content);
    

    【讨论】:

    • 啊,我尝试的时候定义不同,用let response = null然后let response = ...
    猜你喜欢
    • 2021-10-29
    • 2021-04-26
    • 2020-08-16
    • 2020-09-03
    • 1970-01-01
    • 2019-10-20
    • 2019-07-04
    • 1970-01-01
    • 2018-05-09
    相关资源
    最近更新 更多