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
>