在Angular7中使用Devextreme获得第一个api响应后获得错误响应时重复调用第二个api

问题描述

我在Angular7中使用devextreme的CustomStore。我正在调用两个API

  1. https://*****.execute-api.us-east-1.amazonaws.com/POD/cost
  2. https://*****.execute-api.us-east-1.amazonaws.com/POD/costApi

在获得第一个api的响应时,这里需要每5秒调用第二个api,最多3次。我试图将第二个api放在setTimeout块中并每5秒钟调用一次,但响应未附加到CustomSotre。

我尝试了多种选择来实现这一目标,但运气还不是。

从“ devextreme / data / custom_store”导入CustomStore; 请在下面找到示例代码

// using tableDataSource as datasource in datagrid
this.tableDataSource.store = new CustomStore({
      key: 'index',load: async function (loadOptions: any) {
        let params: HttpParams = new HttpParams();
       let newmrodata: any ={};
          self.dataGridParams = newmrodata;

          httpVerb = 'POST';
          self.dataGridParams = self.tableParams;
          
        }
        let res;
        const req = await self.costDataService.getTableDataForCost(httpVerb,self.loadUrl,self.dataGridParams)
          .toPromise()
          .then((result: any) => {
           res = self.httpClient.post(self.allUrl + 'read-records',{
                'connectionId': 1,'schemaName': "userCountDb ",'tableName': 'sqs_api','user_email': sessionStorage.getItem('username')
              })
                .toPromise()
                .then((result: any) => {
                  if(result['totalCount'] !== undefined && result['totalCount'] !== null) {
               return {
                data: result['data'] ? result['data'] : [{ Error: JSON.stringify(result) }],totalCount: result['totalCount'] ? result['totalCount'] : 0
              };
            }
            });
     
          });
        return res;
      },update: (key,values) => self
    });

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...