gpt4 book ai didi

Angular Material : extend a MatPaginator without creating a dupe paginator

转载 作者:太空狗 更新时间:2023-10-29 17:28:48 27 4
gpt4 key购买 nike

@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
}
}

主要成分:

@Component({
selector: 'app-main-component',
template: '<app-custom-paginator></app-custom-paginator>',
})
export class MainComponent implements OnInit, AfterViewInit {
@ViewChild(CustomPaginator) paginator: CustomPaginator;
}

我正在尝试寻找一种方法来扩展 MatPaginator。我被卡住了,因为在我的子组件 CustomPaginator 中,我必须使用 @ViewChild 来访问自定义创建的 MatPaginator从其 View 创建的分页器。

我真正想要的是以某种方式从我的 MainComponent 创建一个 CustomPaginatorCustomPaginator 不需要创建和访问 MatPaginator 查看它自己的子项,因为 CustomPaginator 是一个 MatPaginator

最佳答案

您可以在子组件中使用 MatPaginator 组件的模板

@Component({
selector: 'app-custom-paginator',
template: (<any>MatPaginator).__annotations__[0]['template'],
})
export class CustomPaginator extends MatPaginator {

customMethod(): number {
return 1
}
}

我用从未在 Material 组件上使用过的自定义基础组件完成了这些。你可以试试

关于 Angular Material : extend a MatPaginator without creating a dupe paginator,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50438550/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com