所以我正在制作一个不和谐的机器人,并且已经在这个小巧的代码中工作了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;