globalShortcut

注册全局快捷键。

tauri.conf.json 中的 build.withGlobalTauri 设置为 true 时,也可以通过 window.__TAURI__.globalShortcut 访问此软件包。

API 必须添加到 tauri.conf.json 中的 tauri.allowlist.globalShortcut 中:


{
  "tauri": {
    "allowlist": {
      "globalShortcut": {
        "all": true // 启用所有全局快捷键API
      }
    }
  }
}

建议只允许列出您使用的 API,以优化程序包的大小和安全性。

类型别名

ShortcutHandler

ShortcutHandler: (shortcut: string) => void

类型声明

(shortcut: string): void

参数

名称 类型
shortcut string

返回值: void

定义在: globalShortcut.ts:29

方法

isRegistered

isRegistered(shortcut: string): Promise<boolean>

确定给定的快捷键是否已被此应用程序注册。

示例


import { isRegistered } from '@tauri-apps/api/globalShortcut';
const isRegistered = await isRegistered('CommandOrControl+P');

自1.0.0版本起

参数

名称 类型 描述
shortcut string 以 "+"分隔的快捷键定义、修饰符和按键数组,例如 CmdOrControl+Q

返回值: Promise<boolean>

register

register(shortcut: string, handler: ShortcutHandler): Promise<void>

注册一个全局快捷键

示例


import { register } from '@tauri-apps/api/globalShortcut';
await register('CommandOrControl+Shift+C', () => {
  console.log('Shortcut triggered');
});

自1.0.0版本起

参数

名称 类型 描述
shortcut string 快捷键定义,修饰符和按键用 "+"分隔,例如 CmdOrControl+Q
handler ShortcutHandler 快捷键处理程序回调 - 将触发的快捷键作为参数

返回值: Promise<void>

registerAll

registerAll(shortcuts: string[], handler: ShortcutHandler): Promise<void>

注册全局快捷键集合。

示例


import { registerAll } from '@tauri-apps/api/globalShortcut';
await registerAll(['CommandOrControl+Shift+C', 'Ctrl+Alt+F12'], (shortcut) => {
  console.log(`Shortcut ${shortcut} triggered`);
});

自1.0.0版本起

参数

名称 类型 描述
shortcuts string[] 以 "+"分隔的快捷键定义、修饰符和按键数组,例如 CmdOrControl+Q
handler ShortcutHandler 快捷键处理程序回调 - 将触发的快捷键作为参数

返回值: Promise<void>

unregister

unregister(shortcut: string): Promise<void>

取消注册全局快捷键。

示例


import { unregister } from '@tauri-apps/api/globalShortcut';
await unregister('CmdOrControl+Space');

自1.0.0版本起

参数

名称 类型 描述
shortcut string 快捷键定义,修饰符和按键用 "+"分隔,例如 CmdOrControl+Q

返回值: Promise<void>

unregisterAll

unregisterAll(): Promise<void>

取消所有注册的全局快捷键。

示例


import { unregisterAll } from '@tauri-apps/api/globalShortcut';
await unregisterAll();

自1.0.0版本起

返回值: Promise<void>