首先,我承认我在角度方面还很新。我已经搜索过此内容,却没有发现任何有用的信息。现在,我只是在寻找是否正在树错树丛中,或者是否缺少有关如何处理发射器的信息。
我有一系列应用程序组件,它们都从抽象的基本组件“ ApplicationComponent”继承。每个子组件包含(除其他组件外)嵌套的摘要组件。摘要组件具有多个嵌套组件,每个嵌套组件都有一个编辑按钮,该按钮发出页面更改请求直至摘要父级。从那里,我需要将页面更改请求发送到父应用程序。我要解决的问题是,我是否可以处理基本组件中的发射器,而不用为每个Application实例重复代码?
这是基本组成部分:
@Component({
selector: 'base-application',
templateUrl: './application.component.html',
styleUrls: ['./application.component.css']
})
export abstract class ApplicationComponent extends CertificationComponent implements OnInit {
protected AppType: AppType;
protected AppId: string;
protected CurrentPage: number;
constructor(private AppAlertServ: AlertService,
private AppServ: ApplicationService,
private AppCertServ: CertificationService,
private AppCertId: string,
private AppTypeId: string) {
super(AppAlertServ, AppCertServ, AppCertId);
this.AppType.Id = AppTypeId;
this.CurrentPage = 1;
}
ngOnInit() {
super.ngOnInit();
this.AppServ.Read(this.AppType.Id).subscribe(
(AppNext: AppType) => {
this.AppType = AppNext;
},
AppError => {
this.AppAlertServ.error(AppError);
}
)
}
// Here is where I'd like to handle the emitter
public OnPageChange(NewPageNumber: number) {
this.CurrentPage = NewPageNumber;
}
}
这个问题是我不知道如何捕获发射器,因为实际上并未创建此抽象类。我可以参考实例化的子模板吗?
另一件事,我正在研究的解决方案不是直接路由问题。由于不是每个应用程序都具有相同的组件列表,并且顺序可以更改,因此CurrentPage更具ID性,因此我要说“无论在编辑配置中打开了第5页是什么”。