簡體   English   中英

discord.js Linkfilter TypeError:無法讀取 null 的屬性“角色”

[英]discord.js Linkfilter TypeError: Cannot read property 'roles' of null

我的鏈接過濾器系統出現錯誤。 角色的某些東西不起作用。

https://sourceb.in/pwvz5xjucp

這是我得到的錯誤:

(node:12236) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'roles' of null
    at Client.<anonymous> (C:\Users\eFhii\Desktop\Venetic eSports\development_discord\index.js:134:24)
    at Client.emit (events.js:327:22)
    at MessageCreateAction.handle (C:\Users\eFhii\Desktop\Venetic eSports\development_discord\node_modules\discord.js\src\client\actions\MessageCreate.js:31:14)
    at Object.module.exports [as MESSAGE_CREATE] (C:\Users\eFhii\Desktop\Venetic eSports\development_discord\node_modules\discord.js\src\client\websocket\handlers\MESSAGE_CREATE.js:4:32)
    at WebSocketManager.handlePacket (C:\Users\eFhii\Desktop\Venetic eSports\development_discord\node_modules\discord.js\src\client\websocket\WebSocketManager.js:384:31)
    at WebSocketShard.onPacket (C:\Users\eFhii\Desktop\Venetic eSports\development_discord\node_modules\discord.js\src\client\websocket\WebSocketShard.js:444:22)
    at WebSocketShard.onMessage (C:\Users\eFhii\Desktop\Venetic eSports\development_discord\node_modules\discord.js\src\client\websocket\WebSocketShard.js:301:10)
    at WebSocket.onMessage (C:\Users\eFhii\Desktop\Venetic eSports\development_discord\node_modules\ws\lib\event-target.js:132:16)
    at WebSocket.emit (events.js:315:20)
    at Receiver.receiverOnMessage (C:\Users\eFhii\Desktop\Venetic eSports\development_discord\node_modules\ws\lib\websocket.js:825:20)
    at Receiver.emit (events.js:315:20)
    at Receiver.dataMessage (C:\Users\eFhii\Desktop\Venetic eSports\development_discord\node_modules\ws\lib\receiver.js:437:14)
    at Receiver.getData (C:\Users\eFhii\Desktop\Venetic eSports\development_discord\node_modules\ws\lib\receiver.js:367:17)
    at Receiver.startLoop (C:\Users\eFhii\Desktop\Venetic eSports\development_discord\node_modules\ws\lib\receiver.js:143:22)
    at Receiver._write (C:\Users\eFhii\Desktop\Venetic eSports\development_discord\node_modules\ws\lib\receiver.js:78:10)
    at doWrite (_stream_writable.js:403:12)

由於 message.member 在這種情況下返回GuildMember ,因此沒有成員。
這意味着什么? 這意味着有人在私人聊天 (DM) 中向機器人發送消息
要解決此問題,只需忽略不在服務器中的消息:
if(.message;guild) return; 所以你的代碼將是這樣的:\

//Linkfilter
bot.on("message", async message => {
    if(!message.guild) return;
    const mongo = require('./mongo')
    const warnSchema = require('./models/warn-schema')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM