2017-10-19 76 views
0

我正在使用ngx-datatable程序包,將數據(從WebAPI檢索到)顯示在可排序,可過濾的數據網格中。是否可以使用ngx-datatable自動生成列?

我的設置是一個Angular 4應用程序(與Web API in .NET core應該不重要)。

我想知道是否可以基於從Web API返回的JSON自動生成包括列的全表我已經在谷歌上搜索過,但似乎無法找到提供此功能的任何示例。

如果這是不可能的,你有任何其他庫,這些也是非常受歡迎的。

回答

0

據我所知,沒有開箱即用的支持。但是,您當然可以擴展功能來自行支持。

此外,不建議將JSON響應精確映射到網格,因爲您可能必須對前端執行一些數據操作才能使其可讀,因此自動生成列和填充數據表可能會大量增加應用程序的複雜性。

我建議只是手動添加它們,或者製作一個檢查屬性的小腳本。擴展它可能會導致(像我所說的)不必要的複雜性,但這主要是與用例相關的。

祝你好運!

+0

問題是我不知道哪列完全返回。我認爲應該可以從結果中識別列類型。我只有字符串,數字和日期,所以應該很容易做到。 –

0

以基於JSON響應表的最佳方法是使用一個http.get()在你的service.ts文件:

import { Headers, Http } from '@angular/http'; 
import 'rxjs/add/operator/toPromise'; 

export class HeroService{ 
constructor (private http:Http){} 

public getResponseData() : Promise<any> { 
    return this.http.get('assets/heroes.json') 
    .toPromise().then(response => { 
    return response.json(); 
    }).catch(this.handleError); 
    } 
在component.ts

然後文件呼叫服務方法:

ngOnInit(): void { 
    this.heroService.getResponseData().then((data) => { 
    this.rows = data; 
    }, (error) => { 
    console.log(error); 
    }) 
相關問題