本文整理汇总了TypeScript中@csegames/camelot-unchained.events.on方法的典型用法代码示例。如果您正苦于以下问题:TypeScript events.on方法的具体用法?TypeScript events.on怎么用?TypeScript events.on使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类@csegames/camelot-unchained.events
的用法示例。
在下文中一共展示了events.on方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: registerOtherPatcherHubEvents
function registerOtherPatcherHubEvents(dispatch: (action: ControllerAction) => any,
apiHost: string,
controllerState?: ControllerState) {
if (!window[PATCHER_HUB_WINDOW_ID] || !window[PATCHER_HUB_WINDOW_ID].hubs ||
!window[PATCHER_HUB_WINDOW_ID].eventListeners) return;
const characterUpdatedEvent = signalr.getPatcherEventName(apiHost, signalr.PATCHER_EVENTS_CHARACTERUPDATED);
window[PATCHER_HUB_WINDOW_ID].eventListeners[characterUpdatedEvent] =
events.on(characterUpdatedEvent, (characterJSON: string) => {
const character = utils.tryParseJSON<webAPI.SimpleCharacter>(characterJSON, client.debug);
if (character !== null) {
if (controllerState && isEqual(controllerState.characters[character.id], character)) {
// No need to update character if already equal to what we have in state.
return;
}
// Update character
dispatch(characterUpdate(character));
}
});
const characterRemovedEvent = signalr.getPatcherEventName(apiHost, signalr.PATCHER_EVENTS_CHARACTERREMOVED);
window[PATCHER_HUB_WINDOW_ID].eventListeners[characterRemovedEvent] =
events.on(signalr.getPatcherEventName(apiHost, signalr.PATCHER_EVENTS_CHARACTERREMOVED), (id: string) => {
dispatch(characterRemoved(id));
});
}
示例2: registerPatcherHubEvents
// HELPER METHODS
function registerPatcherHubEvents(dispatch: (action: ControllerAction) => any) {
events.on(signalr.PATCHER_EVENTS_ALERT, (alertJSON: string) => {
const alert = utils.tryParseJSON<webAPI.PatcherAlert>(alertJSON, client.debug);
if (alert !== null) dispatch(alertReceived(alert));
});
events.on(signalr.PATCHER_EVENTS_SERVERUPDATED, (serverJSON: string) => {
const server = utils.tryParseJSON<webAPI.ServerModel>(serverJSON, client.debug);
if (server !== null) dispatch(serverUpdate(server));
});
events.on(signalr.PATCHER_EVENTS_SERVERUNAVAILABLE, (name: string) => dispatch(serverUnavailable(name)));
}
示例3: return
return (dispatch: (action: any) => any) => {
dispatch(init());
window.onresize = () => {
if (window.innerWidth >= 640 && window.innerHeight >= 480) {
dispatch(resize());
}
};
// hook up to event triggers
events.on('hudnav--navigate', (name: string) => {
switch (name) {
case 'chat':
return dispatch(toggleVisibility(name));
case 'ui': return dispatch(toggleHUDLock(addEvent, removeEvent));
case 'lockui': return dispatch(lockHUD(removeEvent));
case 'reset': return dispatch(resetHUD());
default: return;
}
});
const listener = (e: KeyboardEvent) => {
if (e.which === 27) {
dispatch(lockHUD(removeEvent));
}
};
const addEvent = () => window.window.addEventListener('keydown', listener);
const removeEvent = () => window.window.removeEventListener('keydown', listener);
};
示例4: onHideTooltip
export function onHideTooltip(callback: () => void) {
return events.on(HIDE_TOOLTIP, callback);
}
示例5: onShowTooltip
export function onShowTooltip(callback: (payload: ShowTooltipPayload) => void) {
return events.on(ACTIVATE_TOOLTIP, callback);
}
示例6: onHideContextMenu
export function onHideContextMenu(callback: () => void) {
return events.on(HIDE_CONTEXT_MENU, callback);
}
示例7: onShowContextMenu
export function onShowContextMenu(callback: (items: MenuItem[], event: MouseEvent) => void) {
return events.on(ACTIVATE_CONTEXT_MENU, callback);
}
示例8: onSystemMessage
export function onSystemMessage(callback: (message: string) => void) {
return events.on(SYSTEM_MESSAGE_EVENT, callback);
}