fs.writeFileSync в fs.WriteFile

#javascript #node.js #discord.js

#javascript #node.js #discord.js

Вопрос:

Мне интересно, как перейти fs.writeFileSync на fs.writeFile

 var users = {
  "(there is users id)": {
    "bal": 28,
    "lastclaim": 1612012406047,
    "lastwork": 1612013463181,
    "workers": 1,
    "rebirths": 1
  }
}
setInterval(function(){
   users = Object.entries(users).reduce((init, [key, value] )=> ({...init, [key]: {...value, bal: value.bal  = 1 }}),{})
   fs.writeFileSync("./DB/users.json", JSON.stringify(users));
},1000) 
 

Я использую этот код, чтобы пользователи получали определенную сумму денег каждые 1 секунду. Я хочу изменить значение fs.writeFileSync("./DB/users.json", JSON.stringify(users)); на a fs.writeFile() , но я не уверен, как это сделать.

Комментарии:

1. Вы пытались прочитать документацию ?

2. @ZsoltMeszaros Да, я прочитал документацию, но я не слишком ее понял.

Ответ №1:

Вы можете использовать:

 var users = {
  "(there is users id)": {
    "bal": 28,
    "lastclaim": 1612012406047,
    "lastwork": 1612013463181,
    "workers": 1,
    "rebirths": 1
  }
}
setInterval(function(){
   users = Object.entries(users).reduce((init, [key, value] )=> ({...init, [key]: {...value, bal: value.bal  = 1 }}),{})
   fs.writeFile("./DB/users.json", JSON.stringify(users), () => {});
},1000)
 

но я не вижу смысла?

Комментарии:

1. Не забывайте, что небезопасно использовать fs.writeFile() несколько раз один и тот же файл, не дожидаясь обратного вызова.