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