我需要弄清楚如何同步调用这个函数。
fetchData: function(recs){
store = Ext.getStore('OutOfBalanceList');
store.reload({
params: {
startDate: searchForm.startDate,
endDate: searchForm.endDate,
cusip: searchForm.cusip,
account: searchForm.account
},
callback: function (records, options, success) {
recs = records.length;
return recs;
}
});
},
我很欣赏有关Async的所有讲道,但在这种情况下我必须使用同步调用,因为当返回的数据为空时,我必须使用不同的参数再次回调。目前这最终成为一个无限循环,因为“recs”不会在外面改变!
非常感谢
答案 0 :(得分:1)
不要试图让它同步。在回调方法中执行“使用不同参数再次调用”。像这样:
fetchData: function(recs) {
var me = this;
store = Ext.getStore('OutOfBalanceList');
store.reload({
params: {
startDate: searchForm.startDate,
endDate: searchForm.endDate,
cusip: searchForm.cusip,
account: searchForm.account
},
callback: function (records, options, success) {
if (records.length == 0) {
me.fetchDataWithDifferentParameters();
}
}
});
}
如果您要使用JavaScript框架并调用外部数据源,那么学习如何使用回调非常重要。