我必须使用Angular中的组件,一个使用我的应用程序模板,而另一个使用模式。我已经实现了共享服务来设置和获取点击事件,如下所示:
@Injectable({ providedIn: 'root', }) export class SharedServiceService { constructor() {} private subject = new Subject<any>(); sendClickEvent(id) { this.subject.next(); } getClickEvent(): Observable<any> { return this.subject.asObservable(); } }
当我单击我的应用程序中一个在参数中获得ID的按钮时,我想打开模态:
<a (click)="onOpenModal(pension.id)"> //HTML of my template onOpenModal(id) { this.sharedService.sendClickEvent(id); //.ts of my template }
但是问题是我想获取此ID,在组件模式下创建一个新函数,在我的模式HTML中调用她,然后将该函数重新发送到我的主要组件中:
export class ModalSupprimerComponent implements OnInit { clickEventsubscription: Subscription; constructor(private sharedService: SharedServiceService) { this.clickEventsubscription = this.sharedService.getClickEvent(id).subscribe(() => {}); //problem here with id } onDelete(id) { this.sharedService.sendClickEvent(id); } ngOnInit() {} }
而且我的模式HTML就是这样:
<button type="button" class="btn btn-primary" aria-label="Confirmer l'abandon" (click)="onDelete(id)">
我必须使用Angular中的组件,一个使用我的应用程序模板,而另一个使用模式。我已经实现了共享服务来设置和获取点击事件,如下所示:@Injectable({provedIn:'root'...
sendClickEvent(id) {
this.subject.next(id); // <-- push id here
}