You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Discord机器人临时禁言命令报错:TypeError: user.timeout is not a function

问题原因

你报错的核心原因是:interaction.user.id返回的是字符串类型的用户ID,而timeout()是Discord.js中GuildMember(服务器成员)对象的方法,字符串没有这个方法,所以触发TypeError。

解决方法

要调用timeout(),你需要获取当前命令使用者的GuildMember实例,而不是单纯的用户ID。修改代码如下:

const Discord = require("discord.js");

module.exports = {
    name: 'cramptés',
    description: 'quoi ? t\'as les cramptés ?',
    permission: 'Aucune',
    dm: false,
    category: 'Utilitaire',

    async run(bot, interaction, args) {
        await interaction.reply({
            content: `C'est dommage d'avoir les cramptés`,
            ephemeral: true,
            components: []
        });
        
        // 替换为GuildMember实例
        const member = interaction.member;
        // 调用timeout方法,参数:禁言时长(毫秒),原因
        await member.timeout(600000, "fallait pas avoir les cramptés");
    }
}
额外注意事项
  • 确保你的机器人拥有管理成员(Manage Members)的权限,否则timeout()会执行失败。
  • 因为timeout()是异步方法,记得加上await关键字,避免未完成操作就结束函数。

内容的提问来源于stack exchange,提问作者AirZoma

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 03:17:26