javascript - 无法让 Discord.js 机器人响应消息内容,只能使用 <@null>

标签 javascript node.js string ecmascript-6 discord.js

我刚刚从开发和编码/编程中恢复了很长一段时间,所以生锈是一个非常轻描淡写的说法。

我正在使用不和谐机器人(discord.js)来处理用户填写和发布的某些表单,收集该表单后,应将其发布到单独的隐藏 channel 上以供存档之用,然后删除该表单原始用户帖子,以将困惑程度降至最低。我完全理解这是一种无需参数和数组即可完成操作的基本方法,但对于第一次尝试,它似乎几乎按预期工作。

到目前为止,几乎所有内容都按预期工作,除了当机器人将用户帖子的内容发布到存档 channel 时,它返回“<@null>”

//Discord, client, and console info up here

client.on('message', message => {
  if (!message.guild) return;
  if (message.content.startsWith('Name:')) {
    message.author.send('Thanks for your interest in the group. Your info will be reviewed shortly')
    message.delete(5000)
  if (message.author.bot) return undefined
  let msg = message.content
  if (message.content.startsWith('Name:')) {
    const generalChannel = message.guild.channels.get('channel-id')
    generalChannel.send(message)
  }
}

//client.login info below here

理想情况下,机器人应该能够获取用户帖子的内容,并将其与 message.author.id 一起发布到存档 channel 中,然后删除用户的原始帖子。

最佳答案

更改 message.author.send('...') 中的引号 - 当前您正在尝试访问字符串中间的变量 n .

message.author.send("Thanks for your interest in such'n'such. Your info will be reviewed shortly");

或者转义引号:

message.author.send('Thanks for your interest in such\'n\'such. Your info will be reviewed shortly');

关于javascript - 无法让 Discord.js 机器人响应消息内容,只能使用 <@null>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56606636/

相关文章:

sql - 使用 Node.JS 更新 SQL (better-sqlite3) 中的值

java - 标记包含空标记的字符串

c - scanf和getchar一起读取字符串

javascript - 在 v8 中声明具有未知值的(类)属性的最佳(性能最高)方法

javascript - 在 Chrome 扩展中使用动态生成的 anchor 标记

javascript - 属性 .then 未定义错误

javascript - 需要有关 Node js 异步无限循环的帮助

javascript - 模糊 DOM 元素时会发生什么

javascript - 在 NodeJS 中模拟发出 "Socket hang up"

android - Android 上的共享库 : String assignments (=) to struct values cause segfault (dlfree)