Skip to content
On this page

Home > @taiyuuki/utils > add_keyboard_events

add_keyboard_events() function

该函数添加带有选项的键盘事件,并提供关闭、关闭/打开和手动触发事件的方法。

Signature:

typescript
declare function add_keyboard_events<T extends KeyboardEventOptions>(type: KeyboardEventType, eventsOptions: T): {
    close(): void;
    off(): void;
    on(): void;
    emit: (code: KeyboardEventKeys<T>) => void;
};
declare function add_keyboard_events<T extends KeyboardEventOptions>(type: KeyboardEventType, eventsOptions: T): {
    close(): void;
    off(): void;
    on(): void;
    emit: (code: KeyboardEventKeys<T>) => void;
};

Parameters

ParameterTypeDescription
typeKeyboardEventType要侦听的键盘事件类型,例如“keydown”、“keyup”或“keypress”。
eventsOptionsTeventsOptions 参数是一个对象,其中包含要添加的键盘事件的选项。它可以包括 ctrlKeyaltKeyshiftKeymetaKeycodekeykeyCodecharCode 等属性。这些选项是

Returns:

{ close(): void; off(): void; on(): void; emit: (code: KeyboardEventKeys<T>) => void; }

函数 add_keyboard_events 返回一个具有四种方法的对象:close、off、on 和 emit。

Example

ts
// 绑定事件
const ctrl = add_keyboard_events('keydown', {
 KeyW(){
   console.log('w')
 },
 Enter(){
   console.log('enter')
 }
})
// 手动触发事件
ctrl.emit('KeyW')
// 关闭事件
ctrl.off()
// 重新开启事件。
ctrl.on()
// 解除事件绑定,无法再开启。
ctrl.close()
// 绑定事件
const ctrl = add_keyboard_events('keydown', {
 KeyW(){
   console.log('w')
 },
 Enter(){
   console.log('enter')
 }
})
// 手动触发事件
ctrl.emit('KeyW')
// 关闭事件
ctrl.off()
// 重新开启事件。
ctrl.on()
// 解除事件绑定,无法再开启。
ctrl.close()

Released under the MIT License.