tom*_*271 20 rxjs eventemitter angular
export declare class EventEmitter<T> extends Subject<T> {
/**
* Creates an instance of [EventEmitter], which depending on [isAsync],
* delivers events synchronously or asynchronously.
*/
constructor(isAsync?: boolean);
emit(value: T): void;
/**
* @deprecated - use .emit(value) instead
*/
next(value: any): void;
subscribe(generatorOrNext?: any, error?: any, complete?: any): any;
}
Run Code Online (Sandbox Code Playgroud)
在官方Angular 2 Typescript定义中,似乎没有办法静音或取消订阅EventEmitter.
随着页面使用相同的EventEmitter,我随着时间的推移得到了回调
Gün*_*uer 41
EventEmitter扩展了Subject.当您订阅某个主题时,您将获得一个Subscription以后可以用来取消订阅的主题.
someOutput:EventEmitter = new EventEmitter();
...
this.subscription = someOutput.subscribe(...);
...
this.subscription.unsubscribe();
Run Code Online (Sandbox Code Playgroud)
提示除了s之外,
不要使用EventEmitter其他任何东西@Output().Angular不保证EventEmitter将来会继续扩展Subject甚至工作Subject.
Mar*_*cok 11
因为EventEmitters 只应该用于从组件发出事件,因此不应该订阅它们,所以Angular不需要提供取消订阅的方法.
如果未在组件中使用输出属性,请使用Observable或Subject而不是EventEmitter.
也许他们应该将名称更改为OutputPropertyEmitter.
| 归档时间: |
|
| 查看次数: |
16078 次 |
| 最近记录: |