我正在处理的收集器遇到问题,试图修复过滤器位。尝试做:
const filter = m => m.author.id === message.author.id
和
const filter = m => m.user.id === message.author.id
代码:
const { Message, Client, EmbedBuilder } = require('discord.js')
module.exports = {
name: 'dm',
description: 'DMs someone with a role or a user.',
run: async (client, message, args) => {
if(!message.member.roles.cache.has('insertroleid')) {
const embed = new EmbedBuilder()
.setColor('DarkRed')
.setDescription('You cannot use this command yet as you aren't a Presidential Team member yet!')
message.reply({ embeds: [ embed ] })
}
const filter = m => m.user.id === message.author.id
const mcollector = message.channel.createMessageCollector({
filter,
time: 120000,
max: 1,
maxProcessed: 1,
errors: ['time']
})
const startEmbed = new EmbedBuilder()
.setColor(process.env.embed_color)
.setDescription('Hello, please start proceeding pinging the role you want to send.')
message.reply({ embeds: [ startEmbed ] })
mcollector.on('collect', async mc1 => {
mc1 = mc1.content
console.log(mc1)
})
}
}
错误:节点:事件:505投掷者;//未处理的"错误"事件^TypeError:无法读取未定义(读取"id"(的属性
//collecting from a message command
const msgFilter = m => m.author.id === message.author.id
//collecting from a slash command
const intFilter = m => m.author.id === interaction.user.id