Ag-Grid-服务器端行模型params.failCallback

时间:2018-06-21 16:22:03

标签: javascript ag-grid

我们正在使用企业服务器端行模型从服务器中获取数据。我们已经实现了IServerSideDatasource,如果服务器发生错误,我们会根据建议调用params.failCallback。

但是,网格上没有任何反应。加载微调框仍然可见,并且没有任何错误通知用户。

会触发“ onRowDataChanged”事件,但它没有有关事件状态的信息。

是否有建议的方式将失败通知用户?理想情况下,我想通过ag-grid事件处理此问题,而不是从IServerSideDatasource甚至http客户端抛出我自己的错误。

这可能吗?

1 个答案:

答案 0 :(得分:0)

我正在使用自定义的eventListener来捕获failCallback调用,并且效果很好

在我的主班上:

onGridReady = params => {
    this.gridApi = params.api;
    this.gridApi.addEventListener('failCallback', this.onServerFailCallback);
    this.gridApi.setServerSideDatasource(MyRemoteDataSource);
 };

onServerFailCallback = params => {
    console.error('onServerFailCallback', params); 
 }

在MyRemoteDatasource中:

class MyRemoteDatasource{
    getRows(params) {
        fetchData(params).then(
        response => {     
            params.successCallback(response.data);
        }, 
        error => {    
           params.failCallback();
           params.parentNode.gridApi.dispatchEvent({
               type: 'failCallback',
               api: params.parentNode.gridApi,
               columnApi: params.parentNode.columnApi,
               error: error
           });
        });
    }
}

输出:

  

onServerFailCallback,   {type:“ failCallback”,api:GridApi,columnApi:ColumnApi,错误:错误:堆栈跟踪中fetchData()内部错误…}

相关问题