首页 > 解决方案 > “抛出错误”错误消息不断出现

问题描述

每次我让我的不和谐机器人在线时,自从我添加了一个小型 json 数据库后,它就会离线并在我的控制台中显示此错误,而不会被发生的命令触发。

internal/modules/cjs/loader.js:800
    throw err;
    ^

SyntaxError: C:\Users\User\Desktop\Prince-Yami\entrydata.json: Unexpected token } in JSON at position 833
    at JSON.parse (<anonymous>)
    at Object.Module._extensions..json (internal/modules/cjs/loader.js:797:27)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)
    at Module.require (internal/modules/cjs/loader.js:692:17)
    at require (internal/modules/cjs/helpers.js:25:18)
    at Object.checkInData (C:\Users\User\Desktop\Prince-Yami\indexDATA.js:8:23)
    at Client.bot.on.msg (C:\Users\User\Desktop\Prince-Yami\index.js:47:17)
    at Client.emit (events.js:198:13)

你看,我对此有点陌生,所以我不完全理解这里发生了什么错误。我试图查看文件以了解我的代码中的错误,但我无法准确判断出什么问题。

这是我的 indexDATA.js 文件代码:


module.exports = {
    checkInData: function(msg) {
        const Discord = require('discord.js');
        const bot = new Discord.Client();
        const PREFIX = 'sick.';
        const fs = require("fs")
        bot.entries = require('./entrydata.json')
        let args = msg.content.substring(PREFIX.length).split(" ");

        switch(args[0]){
            case 'entry':
              editedmsg = msg.content.slice(17);

              bot.entries [args[1]] = {
                message: editedmsg
              }
              const configD = JSON.stringify (bot.entries, null, 4)
              fs.writeFile ("./entrydata.json", configD, err => {
                if (err) throw err;
                msg.channel.send('Entry noted');
              });
            break;
            case 'entryget':
              let _message = bot.entries[args[1]].message;
              msg.channel.send(_message);
            break;
        }
    }
};

这是我的 entrydata.json 文件:

{
    "00000": {
        "message": "**Scene 1**"
    },
  }

标签: node.jssyntax-errordiscord.js

解决方案


只需删除 entrydata.json 中的逗号:

{
    "00000": {
        "message": "**Scene 1**"
    }
}

推荐阅读