SuperAPI AI 工具集

tanstack-hotkeys

前端与建站

查看项目

更新于 10-16 02:35

技能介绍

用途:为 React 应用添加键盘快捷键,支持用户自定义快捷键录制、检测按住的修饰键、显示平台相关快捷键标签,以及实现 Vim 风格按键序列。

主要能力:useHotkey 处理单快捷键,Mod 抽象 Cmd/Ctrl 并在组合键上自动阻止默认行为;useHotkeySequence 支持类似 g g 的多键序列并可配置超时;useHotkeyRecorder 支持开始、停止、取消录制用户自定义快捷键;useKeyHold 返回某键是否按住的布尔值并优化重渲染;useHeldKeys 返回当前按下键名数组;useHeldKeyCodes 返回键名到物理 event.code 的映射;HotkeysProvider 设置全局默认选项,各 Hook 可覆盖;formatForDisplay 按平台格式化显示;target 选项配合 ref 可将快捷键限定到元素,需为元素添加 tabIndex;enabled 选项可动态启用或禁用而不卸载。

使用方式:通过 React Hook 在组件中注册快捷键,使用 Mod 而非 Ctrl 以跨平台,组合键默认自动 preventDefault,可用 preventDefault: false 放行默认行为。

限制与注意:非 React 应用需自行封装,核心包虽存在但主要面向 React;复杂输入处理需要完整键映射管理时应考虑专用键映射库。限定到元素时缺少 tabIndex 会导致无法聚焦;ignoreInputs 默认智能检测,设为 false 可强制在输入框内触发;重复注册需设置 conflictBehavior 为 replace 或 error;keyup 需配合 requireReset: true 才能只触发一次。节流与防抖可委托 tanstack-pacer,DevTools 集成可委托 tanstack-devtools。