TypeError: Cannot read properties of undefined (reading 'set') discord.js v13 slash commands handler

TypeError: Cannot read properties of undefined (reading 'set') discord.js v13 slash commands handler

我正在创建 Slash 命令处理程序,当我 运行 机器人收到此错误时: Mainguild.SlashCommands.set(SlashComanndsArray).then(async (SlashCommand) => { TypeError: Cannot read properties of undefined (reading 'set') 这是代码:



   client.on("ready", async () => {
       const Mainguild = await client.guilds.cache.get("926674245357039657");

       Mainguild.SlashCommands.set(SlashComanndsArray).then(async (SlashComanndsArray) => {
           const Roles = (SlashCommandName) => {
               const cmdPerms = SlashComanndsArray.find((c) => c.name === SlashCommandName).permission;
               if(!cmdPerms) return null;

               return Mainguild.roles.cache.filter((r) => r.permissions.has(cmdPerms));
           };
           const FullPermissions = SlashCommand.reduce((accumulator, r) => {
               const roles = Roles(r.name);
               if(!roles) return accumulator;

               const permissions = roles.reduce((a, r) => {
                   return [...a, {id: r.id, type: "ROLE", permission: true}];
               }, []);

               return [...accumulator, {id: r.id, permissions}];
           }, []);

           await Mainguild.SlashCommands.permissions.set({ FullPermissions });
       });

   })
}

也定义了SlashComanndsArray,SlashCommand SlashCommands 是我用 client.SlashCommands = new Collection(); 创建 ID index.js 的集合 完整代码:https://srcb.in/BX1Ko4LuXd index.js : https://srcb.in/qFC57vTaSn

  • Mainguild.SlashCommands 显然是未定义的,因为 Guild.SlashCommands 不是 discord.js
  • 中的东西
  • 改用Guild#commands
Mainguild.commands
  • 您的 client.SlashCommands 仅限于您的 client。您不能将它与 Guild.
  • 一起使用