J'essaye d'implémenter le type de modèle Observer en utilisant EventEmitter dans Angular.Créer EvenEmitter dynamiquement en Angular
Par exemple, j'ai un éditeur appelé component1Publisher
component1Publisher: EventEmitter<any> = new EventEmitter();
publier les événements comme ci-dessous
this.component1Publisher.emit(data);
Abonnez-vous à plusieurs composants comme ci-dessous
component1Publisher.subscribe((data:any) => {
//do something here;
});
Vous pouvez voir la l'éditeur est statique Dans mon projet, l'éditeur et subsciber est complètement dynamique. Donc, je veux créer cette instance de EventEmitter et abonné sur la base de mon name.Something unique composant comme ci-dessous
createEvent(uniqueName:string){
//new unique eventEmitter
}
Mon problème J'ai un cadre réutilisable pour créer un tableau de bord que l'utilisateur peut apporter des widgets fournis par le cadre lui-même. J'essaie donc de communiquer entre les widgets pour le rendre interactif. Par exemple, lorsque vous cliquez sur le widget doit notifier tous les autres widgets. Pour ce faire, je prévois de dire à l'utilisateur de fournir un service dynamique. En service dynamique, ayez une méthode comme onWidgetClick(), qui se déclenchera par framework en résolvant dynamiquement le service. Dans cette méthode, l'utilisateur peut créer un événement à publier. Il notifiera tous les widgets avec les nouvelles données et le framework le mettra à jour avec de nouvelles données (tous les widgets réutilisables ont l'abonné).
Pourriez-vous s'il vous plaît aidez-moi à ce sujet ou suggérer est-il une alternative à faire ce genre de mise en œuvre
La question mise à jour avec l'exigence réelle – JEMI