2017-12-10 1 views
1

Ich baue einen angularJS5-Client mit jhipster Client und ich stieß auf 'JhiEventManage r' in Login-Typoskript-Datei.Was macht JhiEventManager?

import { JhiEventManager } from 'ng-jhipster'; 
..... 
constructor(
     private eventManager: JhiEventManager, 
... 
} 
... 
... 
this.eventManager.broadcast({ 
     name: 'authenticationSuccess', 
     content: 'Sending Authentication Success' 
}); 

Ich will nur wissen, was der Zweck des JhiEventManager ist und wie kann ich Gebrauch davon für andere Funktionen machen? Gibt es Hilfe oder Anleitungen?

Antwort

3

JhiEventManager ist ein einfacher Dienst, der Teil des ng-jhipster ist. Sie finden den Quellcode für diese Datei unter https://github.com/jhipster/ng-jhipster/blob/master/src/service/event-manager.service.ts

Ich konnte keine Dokumentation finden, aber der Code ist wirklich einfach zu folgen.

Die Funktionalität des Dienstes dient als Wrapper für das Abonnieren und Senden von Ereignissen. Dazu haben sie broadcast und subscribe Methoden. In Ihrem Beispiel senden Sie eine Veranstaltung mit dem Namen authenticationSuccess. Was kann man damit machen, ist einfach auf die Veränderungen von einer anderen Komponente zu hören wie folgt:

//in the same or different component: 
this.eventManager.subscribe('authenticationSuccess',() => { 
     console.log('authenticationSuccess called'); 
     //todo: what you want to do when the event is broadcasted. 
    } 
); 

Das ist einfach ein Wrapper für Observablen. Vielleicht möchten Sie stattdessen Observables direkt verwenden.