JhiEventManager做了什么?

时间:2017-12-10 06:11:53

标签: angular jhipster

我正在使用 jhipster客户端构建一个angularJS5客户端,我遇到了' JhiEventManage r'在登录打字稿文件中。

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

我只想知道JhiEventManager的目的是什么,如何将其用于其他功能?有没有可用的帮助或教程文档?

1 个答案:

答案 0 :(得分:4)

JhiEventManager是一个简单的服务,是ng-jhipster的一部分。您可以在https://github.com/jhipster/ng-jhipster/blob/master/src/service/event-manager.service.ts

找到此文件的源代码

我找不到任何文档,但代码非常简单。

该服务的功能是作为事件订阅和广播的包装。为此,他们使用broadcastsubscribe方法。

在您的示例中,您正在广播名为authenticationSuccess的活动。你可以做的是简单地听取另一个组件的变化,如下所示:

//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.
    }
);

这只是observables的包装器。您可能希望直接使用observable。