用户登录
用户注册

分享至

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

  • 作者: 想嗦不能嗦不能嗦又想嗦
  • 来源: 51数据库
  • 2022-10-21

问题描述

这是我从下面的代码中得到的错误: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.');
软件
前端设计
程序设计
Java相关