我正在编写一个小应用程序,用于存储用户和json文件中的链接。
var response = saveUser(user,steamLink);
sendMessages(channelID,[response]);
基本上我能够写入文件,我只需要在消息变量完成后立即设置它。
function saveUser(userId, steamProfile,channelID){
var userList;
var message;
var file = "db/db.json";
var obj = JSON.parse(fs.readFileSync(file,'utf8'));
var userList = obj;
if(_.find(userList.users,['userId',userId])){
message = 'This user allready has a steamlink';
}else{
var temp = new Object();
temp['userId'] = userId;
temp['steamLink'] = steamProfile;
userList.users.push(temp);
var obj = userList;
jsonfile.writeFile(file,obj,function(err,message){
if(!err){
message = "Member Added";
}
});
console.log(transfer);
}
return message;
}
请原谅我的缩进,我似乎无法以格式良好的方式粘贴它!
答案 0 :(得分:0)
您的方法也应该是异步的:
function saveUser(userId, steamProfile,channelID, callback) {
...
jsonfile.writeFile(file,obj,function(err,message) {
if(!err){
message = "Member Added";
callback(message);
}
}
...
}
在那里,从哪里召唤:
saveUser(userId, steamProfile, channelID, function (message) {
console.log(message);
});