JSON JSON输入意外结束

时间:2018-08-19 05:59:11

标签: javascript node.js directory

所以我正在制作一个不和谐的机器人,并且已经在这个小巧的代码中工作了4个小时,我无法弄清楚

const commando = require('discord.js-commando');
const discord = require('discord.js');
const bot = new commando.CommandoClient();
const fs = require('fs');
const jobData = require('../../Economy/jobData.json');

它给了我2个错误之一 答:语法错误:C:\ Users \ IceX \ Desktop \ ScorchBot \ Economy \ jobData.json:JSON输入意外结束

B:错误:找不到模块'../ Economy / jobData.json'

我尝试多次移动文件,甚至删除并重新制作它,我也尝试了多个路径,例如../../jobData.json ../../Economy/jobData ../Economy/jobData.json每个组合都无法正常工作

更新

    async run(message, args)
    {
        

        let sender = message.author;
        let msg = message.content.toUpperCase();
        let prefix = '!'
    
        // Trigger Events
        let jobData = JSON.parse(fs.readFileSync('Economy/jobData.json', 'utf8'));

        if (!jobData[sender.id + message.guild.id]) jobData[sender.id + message.guild.id] = {}
        if (!jobData[sender.id + message.guild.id].job) jobData[sender.id + message.guild.id].job = "Mime";
    
        fs.writeFile('Economy/jobData.json', JSON.stringify(jobData), (err) => {
            if (err) console.error(err);
        })
    }
    
}

这是使用json文件的代码的一部分

at JSON.parse (<anonymous>)
at Object.Module._extensions..json (internal/modules/cjs/loader.js:708:27)
at Module.load (internal/modules/cjs/loader.js:599:32)
at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
at Function.Module._load (internal/modules/cjs/loader.js:530:3)
at Module.require (internal/modules/cjs/loader.js:637:17)
at require (internal/modules/cjs/helpers.js:20:18)
at Object.<anonymous> (C:\Users\IceX\Desktop\ScorchBot\commands\simple\mime.js:5:17)
at Module._compile (internal/modules/cjs/loader.js:689:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)

完整代码

const commando = require('discord.js-commando');
const discord = require('discord.js');
const bot = new commando.CommandoClient();
const fs = require('fs');
const jobData = require('../../jobData.json');


class MimeCommand extends commando.Command
{
    constructor(client)
    {
        super(client,{
            name: '1',
            group: 'simple',
            memberName: '1',
            description: 'select mime job'
        });
    }

    

     run(message, args)
    {
        

        let sender = message.author;
        let msg = message.content.toUpperCase();
        let prefix = '!'
    
        // Trigger Events
        let jobData = JSON.parse(fs.readFile('Economy/jobData.json', 'utf8'));

        if (!jobData[sender.id + message.guild.id]) jobData[sender.id + message.guild.id] = {}
        if (!jobData[sender.id + message.guild.id].job) jobData[sender.id + message.guild.id].job = "Mime";
    
        fs.writeFile('Economy/jobData.json', JSON.stringify(jobData), (err) => {
            if (err) console.error(err);
        })
    }
    
}

module.exports = MimeCommand;

0 个答案:

没有答案