EXT js如何同步调用Store
EXT js How to invoke Store synchronously
我需要搞清楚如何同步调用这个函数。
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;
}
});
},
我很欣赏所有关于异步的布道,但在这种情况下我必须使用同步调用,因为当返回的数据为空时,我必须用不同的参数再次回调。目前这最终成为一个无限循环,因为 "recs" 没有在外面改变!
非常感谢
不要尝试让它同步。在回调方法中执行 "call again with different parameters"。像这样:
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 框架并调用外部数据源,那么学习如何使用回调非常重要。
我需要搞清楚如何同步调用这个函数。
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;
}
});
},
我很欣赏所有关于异步的布道,但在这种情况下我必须使用同步调用,因为当返回的数据为空时,我必须用不同的参数再次回调。目前这最终成为一个无限循环,因为 "recs" 没有在外面改变!
非常感谢
不要尝试让它同步。在回调方法中执行 "call again with different parameters"。像这样:
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 框架并调用外部数据源,那么学习如何使用回调非常重要。