2013-06-21 2 views
0

Я probelem с функцией ожидания конца в моем коде:Wait функция завершится в Worklight

function myfucntion1() 
{ 
    .... 
    // call sql adapter to get data from database 
    onSuccess:callfunctionsucc, 
    onFailure:calfunctionfail 
    .... 
} 

function callfunctionsucc(data) 
{ 
    //foreach in data 
// call myfunction3(item) 
} 

function myfunction3(item) 
{ 
    .... 
    // call sql adapter to get data from database 
    onSuccess:callfunctionsucc2, 
    onFailure:calfunctionfail2 
    .... 
} 
function callfunctionsucc2(data) 
{ 
    //foreach in data 
    //and set data to myarr is my global variable 
} 
function myfunction2() 
{ 
    // access to myarr and process it 
} 

, когда я называю:

var myarr = []; 
myfucntion1(); 
myfunction2(); 

Моя проблема заключается в myfunction2(), myarr = 0, потому что когда я запускаю myfunction1, он вызывает callfunctionsucc, но когда из myfunction 1, myfunction2 - вызов во время callfunctionsucc еще не закончен. Как я могу подождать, чтобы позвонить по телефону, а затем вызвать myfunction2? Спасибо за любую помощь.

ответ

0

В таком адаптере должна быть реализована логика запроса с множеством бэкэнд. Ваше приложение должно сделать один запрос к адаптеру. Адаптер, в свою очередь, должен сделать столько запросов, сколько потребуется, создать ответ и отправить его обратно в приложение.

Заканчивать Расширенное использование адаптера и Mashup обучение и образец на http://www.ibm.com/developerworks/mobile/worklight/getting-started/

+0

Спасибо вам, я могу закодировать машап адаптера, но когда мне нужно делать некоторые вещи, но требует сделать это после того, как адаптер финишного .have каким-либо образом может ждать, чтобы конец адаптера, а затем вызов моей функции? – user2265231

+0

Как насчет вызова myfunction2() на onsucess myfunction1()? –

Смежные вопросы