Javascript TypeError:无法读取属性';公会';未定义的I';我正在写一个欢迎代码,但我一直收到那个错误 const db=require('quick.db') const Discord=require('Discord.js') module.exports=(客户端)=>{ client.on('guildMemberAdd',(成员,消息)=>{ 让welcomechannel=db.get(`welcome\u${message.guild.id}`) 让welcomemsg=db.get(`welcomemsg_${message.guild.id}`) 如果(welcomechannel=null | |未定义)返回 如果(welcomemsg=null | |未定义)welcomemsg=`嘿!一定要阅读规则,玩得开心` let embed=new Discord.MessageEmbed() .setColor(“金色”) .setDescription(welcomemsg) welcomechannel.send(嵌入) }) }

Javascript TypeError:无法读取属性';公会';未定义的I';我正在写一个欢迎代码,但我一直收到那个错误 const db=require('quick.db') const Discord=require('Discord.js') module.exports=(客户端)=>{ client.on('guildMemberAdd',(成员,消息)=>{ 让welcomechannel=db.get(`welcome\u${message.guild.id}`) 让welcomemsg=db.get(`welcomemsg_${message.guild.id}`) 如果(welcomechannel=null | |未定义)返回 如果(welcomemsg=null | |未定义)welcomemsg=`嘿!一定要阅读规则,玩得开心` let embed=new Discord.MessageEmbed() .setColor(“金色”) .setDescription(welcomemsg) welcomechannel.send(嵌入) }) },javascript,discord.js,Javascript,Discord.js,事件仅随参数一起发出。 您必须从成员对象访问帮会属性 const db = require('quick.db') const Discord = require('discord.js') module.exports = (client) => { client.on('guildMemberAdd', (member, message) => { let welcomechannel = db.get(`welcome_${me

事件仅随参数一起发出。 您必须从
成员
对象访问
帮会
属性

const db = require('quick.db')
const Discord = require('discord.js')

module.exports = (client) => {
  
  
    client.on('guildMemberAdd', (member, message) => {
     
        let welcomechannel = db.get(`welcome_${message.guild.id}`)
        let welcomemsg = db.get(`Welcomemsg_${message.guild.id}`)
  
       if(welcomechannel = null || undefined) return
   
        if(welcomemsg = null || undefined) welcomemsg = `Hey <@${member.id}>! Make sure to read the rules and have a great time!`

        let embed = new Discord.MessageEmbed()
        .setColor('GOLD')
        .setDescription(welcomemsg)


        welcomechannel.send(embed)
 

    })
  }
代码中还有几个问题
=
是JS中的赋值运算符。您希望使用
=
==
(严格相等)进行比较。您检查多个值的条件不正确

如果(!welcomechannel==null | | welcomechannel==undefined){
返回
}
或者更好

if(!welcomechannel){
返回
}
类似地,您可以使用以下命令修复
welcomemsg
条件

if(!welcomemsg){
welcomemsg=`嘿!一定要阅读规则,玩得开心`
}
或者更好

const DEFAULT\u MESSAGE=`嘿!一定要阅读规则,玩得开心`
const welcomemsg=db.get(`welcomemsg_${guildId}`)|默认消息
这是固定密码

client.on('guildMemberAdd',(成员)=>{
const{id:guildId}=member.guild
const welcomechannel=db.get(`welcome{guildId}`)
const DEFAULT_MESSAGE=`嘿!一定要阅读规则,玩得开心`
const welcomemsg=db.get(`welcomemsg_${guildId}`)|默认消息
如果(!welcomechannel){
返回
}
//代码的其余部分
})

注意,如果语句不起作用,您的
。单个
=
如果用于为变量赋值,则在
if
语句中需要2或3个
=
。您还需要在这两种情况下传递变量:
if(welcomechannel==null | | welcomechannel==undefined)
我这样做了,但我得到另一个错误welcomechannel.send(embed)^TypeError:无法读取未定义的属性“send”如何解决此问题?是的,我将welcomemsg和Channel的message.guild.id替换为member.guild.id如果
welcomechannel
welcomemsg
不正确,您要处理的条件不正确。让我更新我的答案。@Nelly-o刚刚添加了一个关于条件问题的解释。你在哪里添加的?
let welcomechannel = db.get(`welcome_${member.guild.id}`)
let welcomemsg = db.get(`Welcomemsg_${member.guild.id}`)