當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript EventEmitter.deferredEmit方法代碼示例

本文整理匯總了TypeScript中vs/base/common/eventEmitter.EventEmitter.deferredEmit方法的典型用法代碼示例。如果您正苦於以下問題:TypeScript EventEmitter.deferredEmit方法的具體用法?TypeScript EventEmitter.deferredEmit怎麽用?TypeScript EventEmitter.deferredEmit使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在vs/base/common/eventEmitter.EventEmitter的用法示例。


在下文中一共展示了EventEmitter.deferredEmit方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: test

	test('EventEmitter makes no order guarantees 2', () => {
		var emitter = new EventEmitter();
		var actualCallOrder: string[] = [];

		emitter.addListener('foo', function() {
			actualCallOrder.push('listener1-foo');
			emitter.deferredEmit(() => {
				emitter.emit('bar')
			})
		});


		emitter.addListener('foo', function() {
			actualCallOrder.push('listener2-foo');
		})
		emitter.addListener('bar', function() {
			actualCallOrder.push('listener2-bar');
		})

		emitter.deferredEmit(() => {
			emitter.emit('foo');
		});

		assert.deepEqual(actualCallOrder, [
			'listener1-foo',
			'listener2-bar',
			'listener2-foo'
		]);
	});
開發者ID:amamut,項目名稱:vscode,代碼行數:29,代碼來源:eventEmitter.test.ts

示例2: 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);
	});
開發者ID:StateFarmIns,項目名稱:vscode,代碼行數:25,代碼來源:eventEmitter.test.ts

示例3: function

		emitter.addListener('foo', function() {
			actualCallOrder.push('listener1-foo');
			emitter.deferredEmit(() => {
				emitter.emit('bar')
			})
		});
開發者ID:amamut,項目名稱:vscode,代碼行數:6,代碼來源:eventEmitter.test.ts

示例4:

	public deferredEmit<T>(callback: () => T): T {
		return this._actual.deferredEmit(callback);
	}
開發者ID:diarmaidm,項目名稱:vscode,代碼行數:3,代碼來源:viewOutgoingEvents.ts


注:本文中的vs/base/common/eventEmitter.EventEmitter.deferredEmit方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。