私はその理由が分かっているのを待たずに "then"の動作に問題があります。しかし、私はまだそれを回避する必要があります。 ここに私が持っているユースケースがあります。私がやっているものに".then"が解決されるのを待つ
doWork(family) {
return doWork1(family)
.then(resultOfWork1 => doWork2(resultOfWork1));
}
doWork1(family) {
if (1 === family) {
return doFamily1();
} else {
return doFamily2();
}
}
doFamily1() {
return $http(urlToFamily1)
.then(response => parseFamily1Result(response));
}
parseFamily1Result(response) {
return parsed response in a family1 way;
}
doFamily2() {
return $http(urlToFamily2)
.then(response => parseFamily2Result(response));
}
parseFamily2Result(response) {
return parsed response in a family2 way;
}
doWork2(resultOfWork1) {
// use resultOfWork1
}
問題 は「その後」の約束はdoWork2に到達する前に実行し必要がないためdoWork2で、resultOfWork1が定義されていないということです。
"then"の達成を確実にする方法はありますか? または、このやり方で何か問題がありますか?
、ポストでのミスのために私の悪いです。私はそれを修正した – Majid
あなたはフィドルを作成できますか?正確な問題を特定するのに役立ちます。 – CuriousMind