首页 > 解决方案 > TypeError:无法读取未定义的属性“描述”

问题描述

我正在尝试制作一个不和谐的机器人。如果有人可以帮助我解决这个问题,我将不胜感激。我一直在搜索整个互联网,但我无法解决它。据我调查,他们告诉我,我必须定义我的嵌入或类似的东西。我试图定义它,但它仍然不起作用。我收到此错误:

m.embeds[0].description === '**Cooldown**' && m.author.id === '555955826880413696'
            ^ 
TypeError: Cannot read property 'description' of undefined

我的代码:

let setHunt = new Set();

client.on('message', rmsg => {
        var sw = rmsg.content.toLowerCase();
        if (sw.startsWith('rpg hunt')) {
            if (setHunt.has(rmsg.author.id)) {
                return;
            }
        const rfilter = m => {
            console.log(rmsg.content);
            m.embeds[0].description === '**Cooldown**' && m.author.id === '555955826880413696'
        };
        const collector = rmsg.channel.createMessageCollector(rfilter, {
            time: 2000,
            max: 1
        });
        collector.on('end', m => {
            if (m.size === 0) {
                let filter = m => {
                    return m.id == '733786365342253087' || m.id == '733786293435105422' || m.id == '733786784336445461' || m.id == '733786616769937439';
                }
                let time;
                let role = rmsg.guild.member(rmsg.author).roles.cache.find(filter);
                if (typeof role == 'undefined') {
                    return
                }
                switch (role.id) {
                    case '733786365342253087': time = 60000; break;
                    case '733786293435105422': time = 54000; break;
                    case '733786784336445461': time = 48000; break;
                    case '733786616769937439': time = 39000; break;
                }
                setHunt.add(rmsg.author.id);
                setTimeout(() => {
                    setHunt.delete(rmsg.author.id);
                    rmsg.channel.send(`Your **Hunt** is ready! <@${rmsg.author.id}>`);
                }, time)
            }
        })
    };
});

标签: javascriptdiscordbotsundefineddiscord.js

解决方案


推荐阅读