【问题标题】:discord.js status 'Cannot read property 'setActivity' of null'discord.js 状态'无法读取 null 的属性'setActivity''
【发布时间】:2021-08-30 13:44:46
【问题描述】:

我在尝试运行我的机器人时遇到此错误:

client.user.setActivity(status, { type: 'WATCHING' }) TypeError:无法读取 null 的属性“setActivity”

console.log('fentabot')

let statuses=[
    'ɪɴɢʏᴇɴ',
    'ʟᴜᴀ ᴇxᴇᴄᴜᴛᴏʀ',
    'ᴍᴏᴅ ᴍᴇɴᴜ'
]
setInterval(function(){
    let status = statuses[Math.floor(Math.random() * statuses.lenght)]
    client.user.setActivity(status, { type: 'WATCHING' })
}, 2000)

【问题讨论】:

    标签: javascript discord status


    【解决方案1】:

    确保在您的机器人准备就绪后运行此代码,否则它将无法工作:

    client.on("ready", () => {
        // Place your code here
    });
    

    【讨论】:

    • 我仍然遇到错误。 pastebin.com/1jYZx90N这是我的全部代码
    • @ImreVeres 您正尝试每 10 秒编辑一次状态。如果不是几秒钟,你显然会在几分钟内获得速率限制。您应该尝试将此值乘以至少 60 以使其每 10 分钟更改一次
    • @ImreVeres 顺便说一句,由于您的“客户”我们称为“fasz”,因此您必须将 client.on("ready" ... 替换为 fasz.on("ready" ...
    【解决方案2】:
    console.log('fentabot')
    
    let statuses = [
        'ɪɴɢʏᴇɴ',
        'ʟᴜᴀ ᴇxᴇᴄᴜᴛᴏʀ',
        'ᴍᴏᴅ ᴍᴇɴᴜ'
    ]
    let status = statuses[Math.floor(Math.random() * statuses.lenght)]
    
    setInterval(() {
        client.user.setActivity(status, { type: 'WATCHING' })
    }, 5000)
    

    注意:有 2000 毫秒可能会导致 DISCORD API 滥用,请使用 5000 毫秒

    【讨论】:

      【解决方案3】:

      statuses.lenght 不起作用,因为这是拼写错误,没有概率每个人都会犯这个错误。将其替换为 statuses.length。

      【讨论】:

        猜你喜欢
        • 2020-09-08
        • 1970-01-01
        • 1970-01-01
        • 2022-01-02
        • 2022-01-14
        • 2021-03-08
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多