0
var dataPromise= $q.defer();
function getDataPromise(){
return dataPromise.promise;
}
(function getData(){
setTimeOut(
function(){
myPromise.resolve("data");
}
,1000);
})();
getDataPromise().then(function(){alert("use old data");});
このコードでは、 "getData"関数スコープから定義された "dataPromise"のため、各 "getData"呼び出しで新しい約定が作成されません。関数を一度呼び出すためのJavaスクリプト約束の使用
「getData」は一度呼び出され、「dataPromise」は最初の呼び出しデータを保持し、更新されません。
これがおもしろいアンチパターンであれば分かりますか?もしそうなら、一度非同期関数を呼び出す正しい方法は何ですか?ここで