从 Web api 每页只获得 20 个第一个结果是可能的吗?
It's possible to get just 20 first results per page from web api?
我正在学习如何在 React 中使用 ag-grid,我发现了一个问题:
当我从网络获取数据时 api 结果非常好,比如 8600 个结果
问题:
我想知道是否有可能,例如,每页只获得 20 个结果而不是一次获得所有结果,或者仅从具有这种洞察力的 api 准备的
一些代码:
//http request
onGridReady = params => {
this.gridApi = params.api;
this.gridColumnApi = params.columnApi;
const httpRequest = new XMLHttpRequest();
httpRequest.open( "GET", "https://raw.githubusercontent.com/ag-grid/ag-grid/master/packages/ag-grid-docs/src/olympicWinners.json" );
httpRequest.send();
httpRequest.onreadystatechange = () => {
if (httpRequest.readyState === 4 && httpRequest.status === 200) {
updateData(JSON.parse(httpRequest.responseText));
}
};
const updateData = data => {
this.setState({ rowData: data });
};
};
//ag grid
render() {
return (
<div className="ag-theme-balham" style={{ height: '700px', width: '95%' }}>
<AgGridReact
columnDefs={this.state.columnDefs}
defaultColDef={this.state.defaultColDef}
defaultColGroupDef={this.state.defaultColGroupDef}
columnTypes={this.state.columnTypes}
rowData={this.state.rowData}
onGridReady={this.onGridReady}
pagination={true}
paginationPageSize={20}
/>
</div>
);
}
根据HMR评论回答我的问题:
The answer is no because you are requesting a json file, not a json endpoint.
If you are requesting an endpoint then you can (for example) add parameters such as page=.. and size=..
我正在学习如何在 React 中使用 ag-grid,我发现了一个问题:
当我从网络获取数据时 api 结果非常好,比如 8600 个结果
问题:
我想知道是否有可能,例如,每页只获得 20 个结果而不是一次获得所有结果,或者仅从具有这种洞察力的 api 准备的
一些代码:
//http request
onGridReady = params => {
this.gridApi = params.api;
this.gridColumnApi = params.columnApi;
const httpRequest = new XMLHttpRequest();
httpRequest.open( "GET", "https://raw.githubusercontent.com/ag-grid/ag-grid/master/packages/ag-grid-docs/src/olympicWinners.json" );
httpRequest.send();
httpRequest.onreadystatechange = () => {
if (httpRequest.readyState === 4 && httpRequest.status === 200) {
updateData(JSON.parse(httpRequest.responseText));
}
};
const updateData = data => {
this.setState({ rowData: data });
};
};
//ag grid
render() {
return (
<div className="ag-theme-balham" style={{ height: '700px', width: '95%' }}>
<AgGridReact
columnDefs={this.state.columnDefs}
defaultColDef={this.state.defaultColDef}
defaultColGroupDef={this.state.defaultColGroupDef}
columnTypes={this.state.columnTypes}
rowData={this.state.rowData}
onGridReady={this.onGridReady}
pagination={true}
paginationPageSize={20}
/>
</div>
);
}
根据HMR评论回答我的问题:
The answer is no because you are requesting a json file, not a json endpoint.
If you are requesting an endpoint then you can (for example) add parameters such as page=.. and size=..