私は、非同期の問題に慣れていない初期のコーダーです。簡単にするために、私の問題を説明する簡単な例を作成しました。クエリを実行し、その結果で他の 2 つのクラウド関数を呼び出す単純な関数があります。次に、返されたオブジェクトの .set 値と .save() を試みます。.save() を除いて、すべてが正しく実行されているようです。promises/.then およびその他のいくつかのトリックを使用してみましたが、何も機能しませんでした。誰かが最も単純で直接的な解決策を提供できれば、本当に感謝しています。
Parse.Cloud.define("test", function(request,response){
query.equalTo("name",request.params.name);
query.first(
success: function(result){
result.set("testAverage", Parse.Cloud.run("calcAverage",{"name":request.params.name,"type":"test"}));
result.set("quizAverage", Parse.Cloud.run("calcAverage",{"name":request.params.name,"type":"quiz"}));
result.save();
},
error: function(){
response.error("error");
}
);
return result;
});
PS 私の実際のシナリオでは、2 つだけでなく、他のクラウド機能への 10 ~ 20 の並列呼び出しがあります。
ありがとう!