TypeError: message.guild.channels.find(...).then 不是函数

2022-01-10 00:00:00 javascript discord.js

这是我从下面的代码中得到的错误:TypeError: message.guild.channels.find(...).then is not a function

This is the error I am getting from my code below: TypeError: message.guild.channels.find(...).then is not a function

        message.guild.channels.find('name', `${message.author.username}-oda`).then(c => {
            channel.overwritePermissions(message.member, {
                CONNECT: true,
                VIEW_CHANNEL: true
            });
            message.channel.send('All Ok.')
        })

推荐答案

由于您对此答案发表评论说您使用的是 discord.js v11 而不是 v12,因此我正在根据以下 TipakA 的评论编辑我的答案.

Since you commented on this answer saying you're using discord.js v11 and not v12 I am editing my answer according to tipakA's comment below.

find 不返回 Promise,因此您不能在其上使用 then.

find does not return a Promise, so you cannot use then on it.

您的解决方案是:

const channel = message.guild.channels.find('name', `${message.author.username}-oda`);
channel.overwritePermissions(message.member, {
                CONNECT: true,
                VIEW_CHANNEL: true
            });
message.channel.send('All Ok.');

相关文章