【发布时间】:2021-09-06 10:04:08
【问题描述】:
我需要在角材料表中添加分页。我的数据响应来自 graphql 后端是这样的:
import { Component, OnInit, ViewChild } from '@angular/core';
import { MatPaginator } from '@angular/material/paginator';
import { MatTableDataSource } from '@angular/material/table';
import { Apollo, gql } from 'apollo-angular';
import { Observable } from 'rxjs';
import { map } from 'rxjs/operators';
interface Imp_Type {
uuid: string;
imp_type_name: string;
imp_sub_group: string;
}
interface Response {
imp_type: Imp_Type[]
}
const GET_IMP_TYPE = gql`
query Imp_Type {
imp_type (limit: 10){
uuid
imp_type_name
imp_sub_group {
imp_group_id
sub_grou_name
}
}
}
`;
@Component({
selector: 'app-imp-type',
templateUrl: './imp-type.component.html',
styleUrls: ['./imp-type.component.scss']
})
export class ImpTypeComponent implements OnInit {
@ViewChild(MatPaginator) paginator: MatPaginator;
//imp_type$: Observable<Imp_Type[]>;
query_data = this.apollo.watchQuery<Response>({
query:GET_IMP_TYPE
}).valueChanges.pipe(map(result => result.data.imp_type));
constructor(private apollo: Apollo) { }
displayedColumns: string[] = ['uuid', 'imp_type_name', 'sub_grou_name'];
dataSource = new MatTableDataSource(this.query_data);
ngOnInit(): void {
}
}
当我将“query_data”添加到 MatTableDataSource 时,我收到了这个错误:
“'Observable
我该如何解决这个问题?
【问题讨论】:
标签: angular graphql angular-material-table