【发布时间】:2015-06-03 11:57:11
【问题描述】:
当满足某些条件时,我正在处理的流星项目会上传文件。无论文件是否上传,一旦 if 语句完成,就必须进行 Meteor.call。由于条件的原因,当我使用回调时,它会导致大量重复代码。正如下面所写,我希望 Meteor.call 可以在 uploadFile 回调执行之前执行,这将是一个问题。
var data = {
name: "..."
//...
}
if(condition){
uploadFile(parameters, function(error,result){
if(err) handleError(err);
else data.url1 = result.secure_url;
}
if(condition2){
uploadFile(parameters, function(error,result){
if(err) handleError(err);
else data.url2 = result.secure_url;
}
/* This Meteor.call needs to wait until both if statements above
have completed */
Meteor.call('insertData', data, function(error,result){
//...
}
【问题讨论】:
-
有没有可能两个if条件可以在同一个case中执行
-
@ArunPJohny 这行得通,但我不喜欢 fn() 调用 4 次
标签: javascript asynchronous meteor callback