Sha*_*iro 6 inheritance typescript angular-material2 angular
@Component({
selector: 'app-custom-paginator',
template: '<mat-paginator #paginator pageSize="10"></mat-paginator>',
})
export class CustomPaginator extends MatPaginator {
@ViewChild(MatPaginator) paginator: MatPaginator;
customMethod(): number {
return 1
}
}
Run Code Online (Sandbox Code Playgroud)
主要成分:
@Component({
selector: 'app-main-component',
template: '<app-custom-paginator></app-custom-paginator>',
})
export class MainComponent implements OnInit, AfterViewInit {
@ViewChild(CustomPaginator) paginator: CustomPaginator;
}
Run Code Online (Sandbox Code Playgroud)
我想找出一种方法来扩展MatPaginator
.我被困住了,因为在我的子组件中CustomPaginator
,我不得不使用它@ViewChild
来访问MatPaginator
从其视图创建的自定义分页器创建的.
我真正想要的是以某种方式创建一个CustomPaginator
来自我MainComponent
而不CustomPaginator
需要创建和访问MatPaginator
它自己的视图子,因为CustomPaginator
IS a MatPaginator
.
您可以在子组件中使用 MatPaginator 组件的模板
@Component({
selector: 'app-custom-paginator',
template: (<any>MatPaginator).__annotations__[0]['template'],
})
export class CustomPaginator extends MatPaginator {
customMethod(): number {
return 1
}
}
Run Code Online (Sandbox Code Playgroud)
我使用从未在材质组件上使用过的自定义基础组件完成了这些任务。你可以试试
归档时间: |
|
查看次数: |
781 次 |
最近记录: |