我使用ngx-datatable
包,在可排序的可过滤数据网格中显示我的数据(从WebAPI检索)。
我的设置是Angular 4
应用程序(Web API in .NET core
应该无关紧要。)
我想知道是否可以根据Web API返回的JSON自动生成完整的表包括列。 我已经在google上进行了搜索,但似乎无法找到提供此功能的任何示例。
如果不可能并且您有任何替代库,这些也非常受欢迎。
答案 0 :(得分:0)
据我所知,没有开箱即用的支持。但是,您当然可以扩展功能以自行支持它。
此外,不建议将JSON响应准确映射到网格,因为您可能必须在前端进行一些数据操作以使其可读,因此自动生成列并填充数据表可能会增加很多应用程序的复杂性。
我建议只手动添加它们,或者制作一个检查属性的小脚本。扩展它可能会导致(就像我说的那样)不必要的复杂性,但这主要与用例有关。
祝你好运!答案 1 :(得分:0)
基于JSON响应生成表的最佳方法是在service.ts文件中使用http.get():
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);
})