将数据从httpget转换为数据数组

时间:2018-11-19 01:50:54

标签: angular

我是angular / js的新手,主要使用c#编写代码

下面的代码使用ag-grid,而我试图从我的C#API中获取一个我接收到的json字符串,并将其传递给网格。当前,当我加载网格时,我得到一个错误,我相信是由于从http响应传递的数据im格式不正确而导致的。有谁知道我如何将以下json放入网格?

fopen()

我尝试做import {Component, OnInit} from '@angular/core'; import {HttpClient} from '@angular/common/http' import {AgGridModule} from 'ag-grid-angular'; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.scss'] }) export class AppComponent { title = 'app'; private gridApi; private gridColumnApi; private columnDefs; private sortingOrder; rowData: any; //define a variable that we can store our http request/API data in constructor(private http: HttpClient) { this.columnDefs = [ {headerName: 'Sku', field: 'Sku', sortingOrder: ["asc", "desc"]}, {headerName: 'Size', field: 'Size'}, {headerName: 'Quantity', field: 'Quantity'} ]; } onGridReady(params) { this.gridApi = params.api; this.gridColumnApi = params.columnApi; this.http.get("http://localhost:62819/Api/ShippingCalculator/") .subscribe(data => { params.api.setRowData(data); }) } } ,但说data = JSON.Parse找不到。 Angular似乎非常有用,但是我找不到任何有关将数据从http请求放入简单网格的信息。

JSON

edit:我认为这可能与我的json格式有关。如何仅从json中获取Products []数组并将其分配给网格?

1 个答案:

答案 0 :(得分:0)

让我们尝试一下!

首先将您从响应对象收到的数量字段名称更改为数量,更改为 columnDefs

第二个而不是传递params.api.setRowData(data);而不是传递数组到rowData params.api.setRowData(data.Products);