hotkey - 快捷键 API

模块简介

绑定快捷键 API,可以自定义项目快捷键使用。

方法签名(functions)

bind

绑定快捷键

类型定义

  1. function bind(
  2. combos: string[] | string,
  3. callback: (e: KeyboardEvent, combo?: string) => any | false,
  4. action?: string
  5. ): () => void;

示例

  1. hotkey.bind('command+s', (e) => {
  2. e.preventDefault();
  3. // command+s 快捷键按下时需要执行的逻辑
  4. });

使用示例

基础示例

  1. hotkey.bind('command+s', (e) => {
  2. e.preventDefault();
  3. // command+s 快捷键按下时需要执行的逻辑
  4. });

同时绑定多个快捷键

  1. hotkey.bind(['command+s', 'command+c'], (e) => {
  2. e.preventDefault();
  3. // command+s 或者 command+c 快捷键按下时需要执行的逻辑
  4. });

保存快捷键配置

  1. import {
  2. hotkey,
  3. } from '@alilc/lowcode-engine';
  4. function saveSchema(schema) {
  5. // 保存 schema 相关操作
  6. }
  7. const saveSampleHotKey = (ctx: ILowCodePluginContext) => {
  8. return {
  9. name: 'saveSample',
  10. async init() {
  11. hotkey.bind('command+s', (e) => {
  12. e.preventDefault();
  13. saveSchema();
  14. });
  15. },
  16. };
  17. }
  18. saveSampleHotKey.pluginName = 'saveSampleHotKey';
  19. plugins.register(saveSampleHotKey);