SuperAPI AI 工具集

opentui-react

编程与开发

查看项目

更新于 10-16 05:06

技能介绍

用途:该技能面向使用 OpenTUI 与 React 构建终端用户界面(TUI)的开发场景,提供组件、Hooks、JSX 模式、状态管理与测试方面的协助。适合需要用 React 声明式方式开发命令行界面、键盘交互、表单和动画的程序。

安装:资料给出的依赖安装命令为 bun install @opentui/core @opentui/react react。

基本用法:从 @opentui/core 导入 createCliRenderer,从 @opentui/react 导入 createRoot;通过 await createCliRenderer() 创建渲染器,再用 createRoot(renderer).render() 渲染组件树。

主要能力:

  • Hooks:useKeyboard 处理键盘事件(如判断 key.name 与 key.ctrl);useRenderer 获取渲染器实例;useTerminalDimensions 获取终端宽高变化;useTimeline 基于 duration 和 easing 创建动画,配合 timeline.to(...) 与 timeline.play() 使用。
  • 组件:text、box、input、select、scrollbox、code 等可作为 JSX 元素使用,支持 borderStyle、borderColor、backgroundColor、padding、foregroundColor、decoration 等 props;颜色格式为 { r, g, b, a? }。
  • 状态管理:支持 useState 本地状态,以及 react-redux、zustand 等外部状态库集成。
  • 常见模式:带选择的列表、标签页(Tabs)、模态框(Modal/Dialog)、表单校验等。

适用场景:资料列出使用该技能的时机包括构建 React TUI、使用上述 Hooks、JSX 组件开发、集成 React 状态管理与测试 React OpenTUI 组件。若要使用原生 TypeScript/JavaScript 应使用 /opentui,SolidJS 使用 /opentui-solid,项目脚手架使用 /opentui-projects。

限制:资料未提供收费、价格与授权信息,也未提供完整的测试流程细节;部分内容(如动画 easing 函数、模态点击事件对象)为示例代码,实际使用需结合具体项目验证。