Javascript Discord.js,无法读取属性;“用户”;空的

Javascript Discord.js,无法读取属性;“用户”;空的,javascript,node.js,discord.js,Javascript,Node.js,Discord.js,我有个麻烦,我一点也不懂。 该函数在我的服务器上工作,而在另一个服务器上不工作。 这是我的密码: const user = message.author; let servericon = message.guild.iconURL; let serverembed = new Discord.MessageEmbed() .setAuthor(message.author.username, auser.displayAvatarURL({ format: 'png' })) .setTitl

我有个麻烦,我一点也不懂。 该函数在我的服务器上工作,而在另一个服务器上不工作。 这是我的密码:

const user = message.author;
let servericon = message.guild.iconURL;
let serverembed = new Discord.MessageEmbed()
.setAuthor(message.author.username, auser.displayAvatarURL({ format: 'png' }))
.setTitle("Информация о сервере")
.setColor("RANDOM")
.setThumbnail(servericon)
.addField("Название сервера :", message.guild.name)
.addField("Владелец :", `${message.guild.owner.user.tag}`, true)
.addField("Каналы :", message.guild.channels.cache.size, true)
.addField("Роли :", message.guild.roles.cache.size, true)
.addField("Сервер создан :", `${moment(message.guild.createdAt).format('MMMM Do YYYY')}`)
.addField("Пользователей :", message.guild.memberCount)
.setThumbnail(message.guild.iconURL())
.setTimestamp()
message.channel.send(serverembed);
错误是:
(节点:11288)未处理的PromisejectionWarning:TypeError:无法读取null的属性“user” 在Object.run(C:\Users\alumetryu\Desktop\bot\commands\info\serverinfo.js:20:48) 在客户端。(C:\Users\alumetryu\Desktop\bot\ame\index.js:38:17) 在Client.emit(events.js:315:20) 在MessageCreateAction.handle(C:\Users\alumetryu\node\modules\discord.js\src\client\actions\MessageCreate.js:31:14) 在Object.module.exports[作为消息\u CREATE](C:\Users\alumetryu\node\u modules\discord.js\src\client\websocket\handlers\MESSAGE\u CREATE.js:4:32) 在WebSocketManager.handlePacket(C:\Users\alumetyu\node\u modules\discord.js\src\client\websocket\WebSocketManager.js:384:31) 在WebSocketShard.onPacket(C:\Users\alumetyu\node\u modules\discord.js\src\client\websocket\WebSocketShard.js:444:22) 在WebSocketShard.onMessage(C:\Users\alumetryu\node\u modules\discord.js\src\client\websocket\WebSocketShard.js:301:10) 在WebSocket.onMessage(C:\Users\alumetryu\node\u modules\ws\lib\event target.js:125:16) 在WebSocket.emit(events.js:315:20) 在Receiver.receiveOnMessage(C:\Users\alumetryu\node\u modules\ws\lib\websocket.js:797:20) 在Receiver.emit(events.js:315:20) 在Receiver.dataMessage(C:\Users\alumetryu\node\u modules\ws\lib\Receiver.js:437:14) 在Receiver.getData(C:\Users\alumetryu\node\u modules\ws\lib\Receiver.js:367:17) 在Receiver.startoop(C:\Users\alumetryu\node\u modules\ws\lib\Receiver.js:143:22) 在接收器处写入(C:\Users\alumetryu\node\u modules\ws\lib\Receiver.js:78:10) 在doWrite(_stream_writable.js:403:12) 在writeOrBuffer(_stream_writable.js:387:5) 在Receiver.Writable.write(_stream_Writable.js:318:11) 在TLSSocket.socketOnData(C:\Users\alumetryu\node\u modules\ws\lib\websocket.js:872:35) 在TLSSocket.emit(events.js:315:20) 在addChunk(_stream_readable.js:295:12) (节点:11288)未处理的PromisejectionWarning:未处理的承诺拒绝。此错误源于在没有catch块的异步函数中抛出,或者拒绝未使用.catch()处理的承诺。要在未处理的承诺拒绝时终止节点进程,请使用CLI标志
--unhandled rejections=strict
(请参阅https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (拒绝id:1)
(节点:11288)[DEP0018]弃用警告:未处理的承诺拒绝已弃用。将来,未处理的承诺拒绝将使用非零退出代码终止Node.js进程。

我不确定问题出在哪一行,因为这些行在stackoverflow中没有编号,但我假设问题出在
.addField(“ааааац:”,${message.guild.owner.user.tag},true)
-我猜你是在试图找到所有者,如果是的话,下面是
message.guild.owner
-顺便说一句,对于任何不知道的人来说,公会基本上是一个服务器。所以每个帮会,就是机器人所在的每个服务器。message.guild,表示发送消息的帮会/服务器。更深入地说,message.guild.owner是帮会/服务器的所有者。如果您有任何问题,请随时回复此帖子

我不确定问题出在哪一行,因为这些行没有在stackoverflow中编号,但我假设问题出在
.addField(“ааааац:”,${message.guild.owner.user.tag},true)
-我猜你是在试图找到所有者,如果是的话,下面是
message.guild.owner
-顺便说一句,对于任何不知道的人来说,公会基本上是一个服务器。所以每个帮会,就是机器人所在的每个服务器。message.guild,表示发送消息的帮会/服务器。更深入地说,message.guild.owner是帮会/服务器的所有者。如果您有任何问题,请随时回复此帖子

这是因为公会的所有者未被缓存。相反,请使用

//确保函数是异步的!
const owner=wait message.guild.members.fetch(message.guild.ownerID);
const serverembed=new Discord.MessageEmbed().addField(
'Владелец :',
`${message.guild.owner.user.tag}`,
真的
);

这是因为公会的所有者没有被缓存。相反,请使用

//确保函数是异步的!
const owner=wait message.guild.members.fetch(message.guild.ownerID);
const serverembed=new Discord.MessageEmbed().addField(
'Владелец :',
`${message.guild.owner.user.tag}`,
真的
);

假设错误出现在您显示的代码中,它会建议
message.guild.owner
为null,您可以检查它是否为null,
addField(“bаааааааа:”,`${(message guild.owner.user.tag:“-”),true)
谢谢您,shoejep,帮助我。我已经解决了这个问题!!!假设错误出现在您显示的代码中,它会建议
message.guild.owner
为null,您可以检查它是否为null,
addField(“bаааааааа:”,`${(message guild.owner?message.guild.owner.user.tag:“-”},true)
谢谢您的帮助,shoejep。我已经解决了这个问题@校友干得好!我看到你是新来的堆栈溢出,欢迎来到社区@校友干得好!我看到你是新来的堆栈溢出,欢迎来到社区!很高兴我能帮忙!很高兴我能帮忙!