内ループに対して非同期ことができないコルドバresolvaLocalFileSystemUrl()はここに私のリスト[]である
$scope.getCategory = function(){
var newList = [];
var list = [
{
Category: 'Souenir',
Image: 'http://domain.com/souvenir.jpg'
},
{
Category: 'specialsouvenir',
Image: 'http://domain.com/specialsouvenir.jpg'
},
{
Category: 'flower',
Image: 'http://domain.com/flower.jpg'
},
{
Category: 'Toy',
Image: 'http://domain.com/toy.jpg'
}];
for(var i = 0;i < list.length;i++){
var item = list[i];
var category = '';
var image = '';
var imageName = item.Image.split("/").pop();
var path = '';
path = 'cdvfile://localhost/persistent/';
window.resolveLocalFileSystemURL(path+imageName, function(entry) {
image = entry.toURL();
newList.push({Category:item.Category,Image:image});
});
}
return newList;
}
結果表示:
4件の商品[正しい]各項目の
画像[正しい]
BUTカテゴリそれぞれの4項目[エラー] ここでは、それは古典的なJSトラップであるiPadの
あなたのお返事ありがとうございます、私はちょっと今、どのように動作するのか知っていますが、操作後にリストに戻る方法がありますか? –
このreturnメソッドは、push()の前にnullが返されているようです。getCategory:function(){for(){} return list; } ' –