【发布时间】:2019-06-19 09:56:50
【问题描述】:
我正在尝试使用 json 数据以角度填充 ag-grid,但由于某些原因,数据没有绑定。 我正在使用 ag-grid 社区版和 angular 7。我确保对 ag-grid 的引用是正确的。 我创建了 stackblitz 示例来重现该问题
https://stackblitz.com/edit/angular-pz3gau
组件
import { Component, ViewChild } from "@angular/core";
import { HttpClient } from "@angular/common/http";
import "ag-grid-community";
@Component({
selector: 'my-app',
templateUrl: './app.component.html',
styleUrls: [ './app.component.css' ]
})
export class AppComponent {
name = 'Angular';
private gridApi;
private gridColumnApi;
private columnDefs;
private components;
private rowData: any;
constructor(private http: HttpClient) {
this.columnDefs = [
{
headerName: "Athlete",
field: "athlete"
},
{
headerName: "Date",
field: "date",
editable: true,
cellEditor: "datePicker"
},
{
headerName: "Age",
field: "age"
},
{
headerName: "Country",
field: "country"
},
{
headerName: "Year",
field: "year"
},
{
headerName: "Sport",
field: "sport"
},
{
headerName: "Gold",
field: "gold"
},
{
headerName: "Silver",
field: "silver"
},
{
headerName: "Bronze",
field: "bronze"
},
{
headerName: "Total",
field: "total"
}
];
}
onGridReady(params) {
this.gridApi = params.api;
this.gridColumnApi = params.columnApi;
this.http
.get(
"https://raw.githubusercontent.com/ag-grid/ag-grid/master/packages/ag-grid-docs/src/olympicWinnersSmall.json"
)
.subscribe(data => {
this.rowData = data;
});
}
}
html
<ag-grid-angular
#agGrid
style="width: 100%; height: 100%;"
id="myGrid"
class="ag-theme-balham"
[columnDefs]="columnDefs"
[components]="components"
[rowData]="rowData"
(gridReady)="onGridReady($event)"
></ag-grid-angular>
【问题讨论】: