无法读取未定义distube npm事件处理程序发送的属性

问题描述

所以,我尝试为音乐事件(如下)和事件加载制作一个事件处理程序。但是一旦我开始播放一首歌,事件就会加载,即使消息可能已定义,但它表示发送未定义。

distube 事件处理程序如下:

    const distube = require(`distube`)

    client.distube = new distube(client,{ searchSongs: false,emitNewSongOnly: true});

    const music = fs.readdirsync(`./music`).filter(file => file.endsWith(`.js`));

    for (const file of music){
        console.log(`Loading Music Event: ${file}`);
        const event = require(`./music/${file}`);
        client.distube.on(file.split(".")[0],event.bind(null,client));
    }

下面是 ./music/playSong 下的事件文件(我把 playSong 作为一个测试事件,看看它是否有效)

    const discord = require(`discord.js`)
module.exports = (message,queue,song) => {
    message.channel.send(`Playing \`${song.name}\` - \`${song.formattedDuration}\`\nRequested by: ${song.user}}`)
}

完整错误如下:

(node:9000) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'send' of undefined
    at module.exports (E:\SoftwareGithubRep\MoosacBot\music\playSong.js:3:17)

任何帮助将不胜感激

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...