@realsee/vr-signals
Version:
vr 信号器
193 lines (147 loc) • 4.51 kB
Markdown
# API 文档
本项目使用 [TypeDoc](https://typedoc.org/) 自动生成 API 文档。
## 本地开发
### 生成文档
```bash
# 生成静态文档
npm run docs
# 启动本地服务器预览文档
npm run docs:serve
# 监听文件变化并自动重新生成
npm run docs:watch
```
### 文档脚本说明
- `npm run docs` - 生成静态 HTML 文档到 `./docs` 目录
- `npm run docs:serve` - 启动本地服务器预览文档(默认端口 3000)
- `npm run docs:watch` - 监听文件变化并自动重新生成文档
- `npm run docs:generate` - 使用脚本生成文档
- `npm run docs:deploy` - 生成并部署文档到 GitHub Pages
## 文档结构
生成的文档包含以下主要部分:
### 核心类 (Core Classes)
- `RealseeVRSignalsClient` - VR 信号客户端类
- `RealseeVRSignalsRemote` - VR 信号远程控制类
- `Base` - 基础类
- `StandardEventTarget` - 标准事件目标类
- `StandardActionManager` - 标准 Action 管理器
- `Logger` - 日志记录器
- `SecurityUtils` - 安全工具类
### 类型定义 (Types)
- `DefaultActionMap` - 默认 Action 映射类型
- `DefaultEventMap` - 默认 Event 映射类型
- `ClientOptions` - 客户端配置选项
- `RemoteOptions` - 远程控制配置选项
- `ConnectionStatus` - 连接状态枚举
- `Message` - 消息结构体
### 工具函数 (Utilities)
- `debounce` - 防抖函数
- `throttle` - 节流函数
- `deepClone` - 深拷贝函数
- `retry` - 重试函数
- `delay` - 延迟函数
### 兼容性配置 (Compatibility)
- `getV1CompatibilityConfig` - 获取 1.x 版本兼容配置
- `getAutoCompatibilityConfig` - 自动获取兼容性配置
- `isV1Environment` - 检测是否为 1.x 版本环境
## 配置说明
TypeDoc 配置文件位于 `typedoc.json`,主要配置项:
- `entryPoints` - 入口文件
- `out` - 输出目录
- `theme` - 主题样式
- `readme` - README 文件路径
- `categorizeByGroup` - 按组分类
- `excludePrivate` - 排除私有成员
- `excludeProtected` - 排除受保护成员
# API 文档
本项目使用 [TypeDoc](https://typedoc.org/) 自动生成 API 文档,并通过 npm 包发布,使用 unpkg 提供在线访问。
## 本地开发
### 生成文档
```bash
# 生成静态文档
npm run docs
# 启动本地服务器预览文档
npm run docs:serve
# 监听文件变化并自动重新生成
npm run docs:watch
```
### 文档脚本说明
- `npm run docs` - 生成静态 HTML 文档到 `./docs` 目录
- `npm run docs:serve` - 启动本地服务器预览文档(默认端口 3000)
- `npm run docs:watch` - 监听文件变化并自动重新生成文档
- `npm run docs:generate` - 使用脚本生成文档
## 文档发布
文档会在发布 npm 包时自动生成并包含在包中:
```bash
# 发布包(会自动生成文档)
npm publish
```
发布后,文档可以通过以下方式访问:
- **unpkg 在线文档**: https://unpkg.com/@realsee/vr-signals@latest/docs/
- **特定版本**: https://unpkg.com/@realsee/vr-signals@2.0.0-beta.4/docs/
- **本地预览**: `npm run docs:serve` 后访问 http://localhost:3000
### 测试发布流程
在发布包之前,可以运行测试脚本验证发布流程:
```bash
# 测试包发布流程
bash scripts/test-publish.sh
```
这个脚本会:
1. 清理之前的构建
2. 重新构建包
3. 生成文档
4. 检查所有必需的文件是否存在
5. 验证 package.json 配置
## 贡献指南
### 添加 JSDoc 注释
为新的类、方法、接口添加 JSDoc 注释:
```typescript
/**
* 类的描述
*
* @template T 泛型参数说明
* @example
* ```typescript
* const instance = new MyClass()
* ```
*
* @category Core Classes
*/
class MyClass<T> {
/**
* 方法的描述
*
* @param param1 参数1说明
* @param param2 参数2说明
* @returns 返回值说明
*
* @example
* ```typescript
* const result = instance.myMethod('param1', 'param2')
* ```
*/
myMethod(param1: string, param2: number): boolean {
// 实现
}
}
```
### 分类标签
使用 `@category` 标签对文档进行分类:
- `Core Classes` - 核心类
- `Types` - 类型定义
- `Utilities` - 工具函数
- `Compatibility` - 兼容性配置
### 示例代码
为重要的 API 添加使用示例:
```typescript
/**
* @example
* ```typescript
* import { RealseeVRSignalsClient } from '@realsee/vr-signals'
*
* const client = new RealseeVRSignalsClient({
* vrLink: 'http://localhost:3000/vr-app',
* element: iframeElement
* })
* ```
*/
```