我用这个密码得了RangeError [BITFIELD_INVALID]: Invalid bitfield flag or number: undefined.分.有人能帮我弄一下undefined吗?

我用的是discord.js v13.6.0.

require('dotenv').config();
const token = process.env.bot_token;

const { Client, Intents } = require("discord.js")
const client = new Client({
  intents: [
    Intents.FLAGS.GUILDS,
    Intents.FLAGS.GUILD_MESSAGES,
    Intents.NON_PRIVILEGED,
    Intents.GUILD_MEMBERS
  ]
});

const prefix = '!getUserByRole';

client.on("messageCreate", (message) =>{
    if(!message.content.startsWith(prefix) || message.author.bot || message.author.id) return;
    const args = message.content.slice(prefix.length).split(/ +/);
    const roleId = args[1];
    message.guild.members.fetch().then((members)=>{
        members.filter(mmbr => mmbr.roles.cache.get(roleId)).map(m => {
            console.log(m.user.tag, m.user.id);
        });
    })
})

client.login(token);

推荐答案

discord.js v13 Intents.ALLIntents.NON_PRIVILEGEDIntents.PRIVILEGED都已被删除,以阻止不良行为.这意味着你需要移除Intents.NON_PRIVILEGED.

还有,没有Intents.GUILD_MEMBERS,应该是Intents.FLAGS.GUILD_MEMBERS.所以你需要像这样更新你的代码:

const client = new Client({
  intents: [
    Intents.FLAGS.GUILDS,
    Intents.FLAGS.GUILD_MESSAGES,
    Intents.FLAGS.GUILD_MEMBERS,
  ],
});

Javascript相关问答推荐

如何循环访问对象数组并以关键值形式获得结果?

Angular:ng-contract未显示

从连接字符串创建客户端时,NodeJS连接到CosmosDB失败

materialized - activeIndex返回-1

如何在Obsidian dataview中创建进度条

无法读取未定义错误的属性路径名''

如何在ASP.NET项目中使用Google Chart API JavaScript将二次轴线值格式化为百分比

扩展类型的联合被解析为基类型

Webpack在导入前混淆文件名

如何在.NET Core中将chtml文件链接到Java脚本文件?

Reaction组件在本应被设置隐藏时仍显示

将数组扩展到对象中

在画布中调整边上反弹框的大小失败

如何在DYGRAPS中更改鼠标事件和键盘输入

如何利用CSS中的隐藏元素实现平滑扩展和防止网格行间隙

Next.js无法从外部本地主机获取图像

如果NetSuite中为空,则限制筛选

Pevent触发material 用户界面数据网格中的自动保存

为什么这个最小Angular 的Licial.dev设置不起作用?

我如何才能获得价值观察家&对象&S的价值?