本文整理汇总了TypeScript中src/on.emit函数的典型用法代码示例。如果您正苦于以下问题:TypeScript emit函数的具体用法?TypeScript emit怎么用?TypeScript emit使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了emit函数的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: registerSuite
interface DOMEvent extends EventObject {
preventDefault: Function;
}
registerSuite({
name: 'events - EventTarget',
'common cases': common({
eventName: 'test',
createTarget: createTarget,
destroyTarget: destroyTarget
}),
'emit return value'() {
const target = createTarget();
assert.isTrue(emit(target, { type: 'test' }));
const handle = on(target, 'test', function (evt: DOMEvent) {
evt.preventDefault();
});
assert.isTrue(emit(target, { type: 'test', cancelable: false }));
assert.isFalse(emit(target, { type: 'test', cancelable: true }));
destroyTarget(target);
handle.destroy();
},
'emit on window'() {
const target = window;
示例2: require
import common from './common';
import registerSuite = require('intern!object');
import assert = require('intern/chai!assert');
import on, { emit } from 'src/on';
function createTarget() {
const events = require('events');
return new events.EventEmitter();
}
registerSuite({
name: 'events - EventEmitter',
'common cases': common({
eventName: 'test',
createTarget: createTarget
}),
'emit return value'() {
const target = createTarget();
assert.isFalse(emit(target, { type: 'test' }));
const handle = on(target, 'test', function () {});
assert.isFalse(emit(target, { type: 'test' }));
handle.destroy();
}
});
示例3: function
export default function (args: any) {
let target: any;
const testEventName: string = args.eventName;
return {
beforeEach() {
target = args.createTarget();
},
afterEach() {
cleanUpListeners();
args.destroyTarget && args.destroyTarget(target);
},
'on and emit'() {
let listenerCallCount = 0;
let emittedEvent: CustomEvent;
testOn(target, testEventName, function (actualEvent: CustomEvent) {
listenerCallCount++;
assert.strictEqual(actualEvent.value, emittedEvent.value);
});
emittedEvent = { value: 'foo', type: testEventName };
emit(target, emittedEvent);
assert.strictEqual(listenerCallCount, 1);
emittedEvent = { value: 'bar', type: testEventName };
emit(target, emittedEvent);
assert.strictEqual(listenerCallCount, 2);
},
'on - multiple event names'() {
let listenerCallCount = 0;
let emittedEventType: string;
let emittedEvent: CustomEvent;
testOn(target, ['test1', 'test2'], function (actualEvent: CustomEvent) {
listenerCallCount++;
if (emittedEventType in actualEvent) {
assert.strictEqual(actualEvent.type, emittedEventType);
}
assert.strictEqual(actualEvent.value, emittedEvent.value);
});
emittedEventType = 'test1';
emittedEvent = { type: emittedEventType, value: 'foo' };
emit(target, emittedEvent);
assert.strictEqual(listenerCallCount, 1);
emittedEventType = 'test2';
emittedEvent = { type: emittedEventType, value: 'bar' };
emit(target, emittedEvent);
assert.strictEqual(listenerCallCount, 2);
},
'on - multiple handlers'() {
const order: any[] = [];
testOn(target, ['a', 'b'], function (event: CustomEvent) {
order.push(1 + event.type);
});
testOn(target, [ 'a', 'c' ], function (event: CustomEvent) {
order.push(2 + event.type);
});
emit(target, { type: 'a' });
emit(target, { type: 'b' });
emit(target, { type: 'c' });
assert.deepEqual(order, [ '1a', '2a', '1b', '2c' ]);
},
'once'() {
let listenerCallCount = 0;
let emittedEvent: CustomEvent;
handles.push(once(target, testEventName, function (actualEvent: CustomEvent) {
listenerCallCount++;
assert.strictEqual(actualEvent.value, emittedEvent.value);
}));
emittedEvent = { value: 'foo', type: testEventName };
emit(target, emittedEvent);
assert.strictEqual(listenerCallCount, 1);
emit(target, emittedEvent);
assert.strictEqual(listenerCallCount, 1);
},
'pausable'() {
let listenerCallCount = 0;
let emittedEvent: CustomEvent;
let handle = pausable(target, testEventName, function (actualEvent: CustomEvent) {
listenerCallCount++;
assert.strictEqual(actualEvent.value, emittedEvent.value);
});
handles.push(handle);
emittedEvent = { value: 'foo', type: testEventName };
//.........这里部分代码省略.........