本文整理匯總了TypeScript中vs/base/common/eventEmitter.EventEmitter類的典型用法代碼示例。如果您正苦於以下問題:TypeScript EventEmitter類的具體用法?TypeScript EventEmitter怎麽用?TypeScript EventEmitter使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了EventEmitter類的7個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。
示例1: test
test('two event emitters, two listeners, deferred emit', function () {
let callCnt = 0;
let emitter1 = new EventEmitter();
let emitter2 = new EventEmitter();
let eventBus = new EventEmitter();
eventBus.addEmitter2(emitter1);
eventBus.addEmitter2(emitter2);
eventBus.addListener2('eventType1', function (e) {
assert(true);
callCnt++;
});
eventBus.addListener2('eventType1', function (e) {
assert(true);
callCnt++;
});
eventBus.deferredEmit(function () {
assert.equal(callCnt, 0);
emitter1.emit('eventType1', {});
emitter2.emit('eventType1', {});
assert.equal(callCnt, 0);
});
assert.equal(callCnt, 4);
});
示例2: test
test('cascading emitters', function () {
var emitter1 = new EventEmitter();
var emitter2 = new EventEmitter();
var emitter3 = new EventEmitter();
var emitter4 = new EventEmitter();
emitter2.addEmitter(emitter1);
emitter3.addEmitter(emitter2);
emitter4.addEmitter(emitter3);
var didCall = false;
emitter4.addListener('eventType', function (e) {
didCall = true;
});
emitter1.emit('eventType', {});
assert(didCall);
});
示例3: function
test('deferred emit', function () {
var calledCount = 0;
eventEmitter.addListener('eventType', function (e) {
calledCount++;
});
eventEmitter.deferredEmit(function () {
assert.equal(calledCount, 0);
eventEmitter.emit('eventType', {});
assert.equal(calledCount, 0);
eventEmitter.emit('eventType', {});
assert.equal(calledCount, 0);
});
assert.equal(calledCount, 2);
});
示例4: function
test('add 2 listeners, emit event, remove one while processing', function () {
let firstCallCount = 0;
let remove1 = eventEmitter.addListener2('eventType', function (e) {
firstCallCount++;
remove1.dispose();
});
let secondCallCount = 0;
eventEmitter.addListener2('eventType', function (e) {
secondCallCount++;
});
eventEmitter.emit('eventType', {});
eventEmitter.emit('eventType', {});
assert.equal(firstCallCount, 1);
assert.equal(secondCallCount, 2);
});
示例5: dispose
public dispose() {
this.domNode = null;
this.eventEmitterHelper.dispose();
if (this.gestureHandler) {
this.gestureHandler.dispose();
this.gestureHandler = null;
}
}
示例6: _onUserActive
private _onUserActive(): void {
this._lastActiveTime = (new Date()).getTime();
if (this._status !== UserStatus.Active) {
this._status = UserStatus.Active;
this._scheduleIdleCheck();
this._eventEmitter.emit('onActive');
}
}
示例7: addScrollListener
public addScrollListener(callback:()=>void): IDisposable {
var localDisposable = this.eventEmitterHelper.addListener2('scroll', callback);
var domDisposable = DomUtils.addDisposableListener(this.domNode, 'scroll', (e:Event) => {
this.eventEmitterHelper.emit('scroll', { browserEvent: e });
});
return {
dispose: () => {
domDisposable.dispose();
localDisposable.dispose();
}
}
}