本文整理汇总了TypeScript中fbemitter.EventEmitter类的典型用法代码示例。如果您正苦于以下问题:TypeScript EventEmitter类的具体用法?TypeScript EventEmitter怎么用?TypeScript EventEmitter使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了EventEmitter类的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: it
it('only emits once for multiple events', function () {
var e = new EventEmitter()
, multi = 0
, foo = 0
, bar = 0;
e.once('foo', function () {
foo++;
});
e.once('foo', function () {
bar++;
});
e.addListener('foo', function () {
multi++;
});
e.emit('foo');
e.emit('foo');
e.emit('foo');
e.emit('foo');
e.emit('foo');
assert.strictEqual(e.listeners('foo').length, 1);
assert.strictEqual(multi, 5);
assert.strictEqual(foo, 1);
assert.strictEqual(bar, 1);
});
示例2: function
(function (j: number) {
for (var i = 0, args: number[] = []; i < j; i++) {
args.push(j);
}
e.once('args', function () {
assert.strictEqual(arguments.length, args.length);
assert.deepStrictEqual(Array.prototype.slice.call(arguments), args);
});
e.once('args', function () {
assert.strictEqual(arguments.length, args.length);
assert.deepStrictEqual(Array.prototype.slice.call(arguments), args);
});
e.once('args', function () {
assert.strictEqual(arguments.length, args.length);
assert.deepStrictEqual(Array.prototype.slice.call(arguments), args);
});
e.once('args', function () {
assert.strictEqual(arguments.length, args.length);
assert.deepStrictEqual(Array.prototype.slice.call(arguments), args);
});
e.emit.apply(e, (['args'] as any[]).concat(args));
})(i);
示例3: invokeOnDispatch
private invokeOnDispatch(payload: Event) {
this.changed = false;
this.onDispatch(payload);
if (this.changed) {
this.emitter.emit(CHANGE_EVENT);
}
}