Я пытаюсь обновить один файл JSON в цикле для Asynchrony. Каждый раз, когда я обновляю весь файл, с 1 объектом. < /P>
Это мой очень сложный код после полудня исследований. (Я знаю, что это слишком сложно, но я хотел показать, что я пробовал до сих пор) < /p>
async function saveJsonFile(data, fileName = 'myFile') {
try {
const jsonData = JSON.stringify(data);
// clear cache
delete require.cache[require.resolve(`./${fileName}.json`)];
// ensure the file exists
await fs.readFile(`${fileName}.json`, 'utf8', (err) => {
if (err) {}
else {
// clear the content of the file
fs.writeFile(`${fileName}.json`, "", "utf8", (err) => {
if (err) {}
else {
// save the json {
if (err) {
}
});
// try saving again
fs.writeFile(`${fileName}.json`, jsonData, 'utf8', (err) => {
if (err) {
}
});
}
});
}
});
}
}
< /code>
Вызывается из другого асинхронного фонда: < /p>
async function runTrading()
{
try {
for (let i = 1; i
Это то, что я получаю (разные петли, попытки, версии и т. Д.)
Обратите внимание на 2 кронштейна в конце каждой строки или в середине. В журнале это выглядит нормально перед сохранением! < /P>
{"prod1":32154.22}}< /code>
или
{"prod1":32154.22,"prod2":0,"prod3":0}32}}
Я пытаюсь обновить один файл JSON в цикле для Asynchrony. Каждый раз, когда я обновляю весь файл, с 1 объектом. < /P> Это мой очень сложный код после полудня исследований. (Я знаю, что это слишком сложно, но я хотел показать, что я пробовал до сих пор) < /p> [code] async function saveJsonFile(data, fileName = 'myFile') { try { const jsonData = JSON.stringify(data);
// ensure the file exists await fs.readFile(`${fileName}.json`, 'utf8', (err) => { if (err) {} else { // clear the content of the file fs.writeFile(`${fileName}.json`, "", "utf8", (err) => { if (err) {} else {
// save the json { if (err) { } });
// try saving again fs.writeFile(`${fileName}.json`, jsonData, 'utf8', (err) => { if (err) { } }); } }); } }); } } < /code> Вызывается из другого асинхронного фонда: < /p> async function runTrading() { try { for (let i = 1; i Это то, что я получаю (разные петли, попытки, версии и т. Д.) Обратите внимание на 2 кронштейна в конце каждой строки или в середине. В журнале это выглядит нормально перед сохранением! < /P> {"prod1":32154.22}}< /code> или {"prod1":32154.22,"prod2":0,"prod3":0}32}}[/code]