我正在尝试使用 Kendo Grid 进行数据绑定(bind)。一切正常,除了在生产模式下构建应用程序 (--aot)
这是错误的来源:
//This is a service
Here are reference
export abstract class MainService extends BehaviorSubject<GridDataResult> {
public loading: boolean;
public pageSize: number = 10;
products: Product[] = [];
protected fetch(state: any): Observable<GridDataResult> {
this.loading = true;
// Make API call and map values
}
}
// This is in my component
public view: Observable<GridDataResult>;
<kendo-grid id="productsGrid" [data]="view | async" [loading]="view.loading" [pageSize]="state.take" [skip]="state.skip"
[sort]="state.sort" [sortable]="true" [pageable]="true" [scrollable]="'none'" (dataStateChange)="dataStateChange($event)"
(remove)="removeHandler($event)">
<kendo-grid-column field="name" title="Name" width="130"></kendo-grid-column>
</kendo-grid>
错误仅在编译时出现: “Observable”类型上不存在属性“loading”
我确保属性加载是public
。但这没有帮助。
如有任何建议,我们将不胜感激。
编辑:基本上错误的意思是没有 view.loading 属性,因为 View 是一个 Observable 并且在一个 observable 中没有加载属性。
最佳答案
我有同样的问题,所以我问了 Telerik,他们告诉我使用数组表示法而不是点:[loading]="view['loading']"
。这对我来说很好,并且仍然正确显示加载图标。
关于angular - 属性 'loading' 在类型 'Observable<GridDataResult> --aot 上不存在(见编辑),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52661729/