-1
以下のコードでは、変数x
に応じて約束事の配列に関数を追加します。最後の条件では、関数を$ httpレスポンスの後に追加する必要があります。このコードは正しいですか? $q.all
のすべての約束の実行は、$http
関数が応答とともに返るまで待ちますか?
var promises = [];
array.forEach(function(x){
if (x==1)
promises.push(function1('aaa'));
else if (x==2)
promises.push(function2('bbb'));
else {
$http.get("url.htm").then(function(response) {
promises.push(function3(response));
});
}
});
$q.all(promises).then(function(resultArray) {
// .....
}
はい、はfunction1,3、2と3のリターンの約束のようなものでなければなりませんが、あなたのソリューションにあなたが '起動していませんfunction3' – ps0604
$ q.allコールバックで呼び出す必要があります –