2017-02-20 24 views
0

約束なしに結果関数を得ることは可能ですか?約束なしの結果非同期関数を取得

getItem: function (item) { 
    AppStorage.fetch(item, function (item) { 
     return item; 
    }); 
} 

作品は結果が発生することはありません。このコードは、それが機能の応答を待ちません原因未定義です:

は例えば、私は値を返す必要が機能していない約束を持っています。 "AppStorage.fetch"関数をsynchroneモードで呼び出す必要があります。

いくつか提案がありますか?

答えて

0

コールバック関数を使用できます。

getItem: function (item, callback) { 
    AppStorage.fetch(item, function (item) { 
     callback(item); 
    }); 
} 

コール:

getItem(item, function(item) { 

}); 
+0

あなたの答えてくれてありがとうしかし、私は電話を変更することはできません外部のlibから提供されたのgetItem。 のgetItem: – Matthieu

+0

あなたが何かしようとしなかった機能(アイテム){ \t するvar itemResult =未定義。 AppStorage.fetch(項目、関数(アイテム){ \t itemResult =項目; \tリターン項目; })。 while(itemResult == undefined); 返品itemResult; } –

関連する問題