如何等待所有商店在ExtJs中同步?

侯赛因

我有一个网格列表,可以由最终用户更改其数据形式。最后,我想通过单击按钮同步所有网格,然后执行操作。

我写了下面的代码:

$.when.apply(
    Ext.ComponentQuery.query('grid')
       .forEach(function(item) {
             if (item.getXType() == "grid") {
                if (item.store.getNewRecords().length > 0 || item.store.getUpdatedRecords().length > 0 || item.store.getRemovedRecords().length > 0) {
                    item.store.sync();
                 }
             }
})).then(function (results) {
    //do something
});

问题是这里store.sync()不等待回调。

建议这样做的方法是什么?

侯赛因

我这样做Promise是这样的:

 // Sync grid data if exist dirty data
 Promise.all(
     Ext.ComponentQuery.query('grid')
     .map(grid => grid.getStore())
     .filter(s => (s.getNewRecords().length + s.getUpdatedRecords().length + s.getRemovedRecords().length) > 0)
     .map(s => new Promise((resolve, reject) => {
           s.sync({
               success: () => { resolve(); },
               failure: () => { reject(); }
           });
      }))
      ).then(() => {
           //do something
      });

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Extjs 4.1-如何等待组合中的所有存储区被加载

如何等待,直到在React-Redux中设置了接收到的同步数组的所有属性?

如何等待所有动画在jQuery中完成?

如何等待所有Promise在ExpressJS中解决?

同步Ajax调用-或:如何等待所有内容加载完成?

如何等待IAsyncEnumerable <>的所有结果?

如何等待所有NSOperations完成?

如何等待所有 Promise 完成

如何等待所有任务完成

如何等待异步方法中的等待完成所有执行?

异步和等待-如何等待所有任务完成?

如何等待一个商店中另一商店发生的调度

RxJava2:如何等待列表中的所有Flowable完成?

你如何等待所有异步调用在Java中完成?

我如何等待Akka.Net中的所有工作完成?

从C#中的方法返回之前如何等待所有任务完成

ReactJS如何等待所有API调用在简单组件的componentDidMount中结束

如何等待所有图像从Fabric JS中的loadfromjson加载到画布?

如何等待ThreadPoolExecutor中的所有任务在超时内完成而又不关闭Executor?

如何等待特定jQuery选择中的所有图像加载?

如何等待渲染组件,直到在Angular 2中收集了所有数据

我如何等待Jenkinsfile的“并行”块中的所有执行程序?

如何等待线程池完成所有任务?

如何等待所有 jquery 加载完成

如何等待SparkContext完成所有过程?

父进程如何等待所有子进程终止

我如何等待任何/所有pthread完成?

如何等待所有请求完成?

如何等待所有异步完成?