angular - JhiEventManager 是做什么的?

标签 angular jhipster

我正在使用 构建一个 angularJS5 客户端jhipster 客户 我在登录 typescript 文件中遇到了“JhiEventManager”。

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

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

最佳答案

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 的包装器。您可能希望直接使用 observables。

关于angular - JhiEventManager 是做什么的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47736385/

相关文章:

java - 创建类路径资源中定义的名称为 'liquibase' 的 bean 时出错 .../config/DatabaseConfiguration.class

java - Spring 数据 JPA OutOfMemoryError : GC overhead limit exceeded

jhipster - 在哪里以及如何定义应用程序属性? - JHIpster

angular - 在具有多个模块(如 JHipster)的项目中嵌套 Angular 组件

c# - .NET Core 2.1/Angular - SignalR 只需 2 分钟即可连接到集线器

javascript - 向多个父级发送事件以触发函数 Angular 5

Angular 9 : Error NG2003: No suitable injection token for parameter 'url' of class 'DataService' . 找到字符串

node.js - 如何使用 angular-cli 加载包?

Angular 2重新加载routerLink用户再次点击

spring-boot - CORS Origin Spring Boot Jhipster - 飞行前失败