1 回答

TA貢獻(xiàn)1765條經(jīng)驗(yàn) 獲得超5個(gè)贊
我并沒(méi)有真正深入研究您的代碼,但在我看來(lái),JSON 文件可能有問(wèn)題,該文件至少應(yīng)包含{}起始內(nèi)容,或者文件讀取/保存有問(wèn)題。我試圖優(yōu)化讀取/保存,其他一切都是一樣的,所以這里是代碼:
const userDataPath = path.resolve(__dirname, './Storage/userData.json');
function loadUserData() {
return JSON.parse(fs.readFileSync(userDataPath).toString());
}
function saveUserData(userData) {
fs.writeFileSync(userDataPath, JSON.stringify(userData, null, 2));
}
message.channel.awaitMessages(filter, { max: 1, time: 30000, errors: ['time'] })
.then(collected => {
const userData = loadUserData();
message.channel.send(`${collected.first().author} acertou!`);
if (!userData[message.author.id]) {
userData[message.author.id] = {
rightQuizAnswers: 0
};
}
userData[message.author.id].rightQuizAnswers += 1;
saveUserData(userData);
})
.catch(collected => {
message.channel.send('Parece que ninguém acertou :( (Bando de buro)');
});
在其他方面,如果您還沒(méi)有這樣做,您應(yīng)該像需要 fs 一樣需要“路徑”。
const fs = require('fs');
const path = require('path'); // Add this
添加回答
舉報(bào)