# Naive UI 重构组件使用指南 ## 快速开始 ### 安装 ```bash # 通过pnpm安装(推荐) pnpm add @prompt-optimizer/ui # 或通过npm安装 npm install @prompt-optimizer/ui ``` ### 基础用法 ```vue ``` ## 主要特性 ### 🎯 完整的可访问性支持 - WCAG 2.1 AA/AAA 标准合规 - 完整的键盘导航 - 屏幕阅读器优化 - 高对比度模式支持 ### 📱 响应式设计 - 移动端优先 - 自适应布局 - 触摸友好的交互 ### ⚡ 性能优化 - 虚拟滚动 - 懒加载 - 防抖节流 - 代码分割 ### 🌍 国际化支持 - 多语言切换 - 本地化格式 - RTL语言支持 ## 组件概览 | 组件名 | 用途 | 主要特性 | |--------|------|----------| | `ContextEditor` | 上下文编辑 | 消息管理、变量处理、工具配置 | | `ToolCallDisplay` | 工具调用显示 | 折叠面板、状态显示、错误处理 | | `ScreenReaderSupport` | 屏幕阅读器支持 | 实时通知、键盘快捷键、导航提示 | ## Composables | 函数名 | 用途 | 返回值 | |--------|------|--------| | `useAccessibility` | 可访问性支持 | 键盘导航、ARIA管理、消息通知 | | `useFocusManager` | 焦点管理 | 焦点陷阱、键盘导航、自动恢复 | | `useAccessibilityTesting` | 可访问性测试 | WCAG合规检查、问题报告 | ## 最佳实践 ### 1. 可访问性优先 ```vue ``` ### 2. 响应式设计 ```vue ``` ### 3. 性能优化 ```vue ``` ## 常见问题 ### Q: 如何启用可访问性模式? A: 使用 `useAccessibility` composable: ```typescript const { isAccessibilityMode } = useAccessibility() // 自动检测或手动启用 isAccessibilityMode.value = true ``` ### Q: 如何处理大量数据的性能问题? A: 使用虚拟化和分页: ```vue ``` ### Q: 如何自定义主题? A: 通过CSS变量覆盖默认主题: ```css :root { --primary-color: #1890ff; --border-radius: 4px; --font-size: 14px; } ``` ### Q: 如何添加国际化支持? A: 配置i18n实例: ```typescript import { createI18n } from 'vue-i18n' const i18n = createI18n({ locale: 'zh-CN', messages: { 'zh-CN': { /* 中文消息 */ }, 'en-US': { /* 英文消息 */ } } }) ``` ## 升级指南 ### 从传统组件升级到Naive UI版本 1. **更新导入语句**: ```typescript // 旧版本 import ContextEditor from './components/ContextEditor.vue' // 新版本 import { ContextEditor } from '@prompt-optimizer/ui' ``` 2. **更新Props**: ```vue ``` 3. **添加可访问性支持**: ```vue ``` ## 开发工具 ### TypeScript支持 完整的TypeScript类型定义: ```typescript import type { ContextState, ToolCall, AccessibilityFeatures, FocusManagerOptions } from '@prompt-optimizer/ui' ``` ### 开发时调试 启用调试模式: ```typescript import { setDebugMode } from '@prompt-optimizer/ui' // 开发环境下启用 if (process.env.NODE_ENV === 'development') { setDebugMode(true) } ``` ### 测试工具 使用内置的测试工具: ```typescript import { useAccessibilityTesting } from '@prompt-optimizer/ui' const { runTest } = useAccessibilityTesting() // 运行可访问性测试 const result = await runTest({ wcagLevel: 'AA', scope: document.body }) ``` ## 贡献指南 欢迎贡献代码和改进建议! 1. Fork 项目仓库 2. 创建特性分支 (`git checkout -b feature/amazing-feature`) 3. 提交更改 (`git commit -m 'Add some amazing feature'`) 4. 推送到分支 (`git push origin feature/amazing-feature`) 5. 创建Pull Request ## 支持 - 📖 [完整API文档](./COMPONENT_API.md) - 🐛 [问题反馈](https://github.com/your-repo/issues) - 💬 [讨论区](https://github.com/your-repo/discussions) --- *最后更新: 2024年XX月XX日*