项目迁移
This commit is contained in:
314
word/api/backend.md
Normal file
314
word/api/backend.md
Normal file
@@ -0,0 +1,314 @@
|
||||
# 后端 API
|
||||
|
||||
## 概述
|
||||
|
||||
DeEarthX-CE 的后端模块使用 TypeScript 开发,提供了核心功能和 API 接口。本章节将详细介绍后端模块的 API 接口。
|
||||
|
||||
## 模块结构
|
||||
|
||||
后端模块包含以下主要目录:
|
||||
|
||||
- `dearth/` - 核心功能模块
|
||||
- `modloader/` - 模组加载器相关功能
|
||||
- `platform/` - 平台集成模块
|
||||
- `template/` - 模板管理模块
|
||||
- `utils/` - 工具函数
|
||||
|
||||
## 核心模块
|
||||
|
||||
### dearth/strategies
|
||||
|
||||
包含各种模组过滤策略:
|
||||
|
||||
- `DexpubFilter.ts` - Dexpub 过滤策略
|
||||
- `HashFilter.ts` - 基于哈希值的过滤策略
|
||||
- `MixinFilter.ts` - 混合过滤策略
|
||||
- `ModrinthFilter.ts` - Modrinth 过滤策略
|
||||
|
||||
### dearth/ModCheckService.ts
|
||||
|
||||
**功能**:负责检查模组的有效性和兼容性
|
||||
|
||||
**方法**:
|
||||
|
||||
- `checkMod(modPath: string): Promise<ModInfo>`
|
||||
- **参数**:`modPath` - 模组文件路径
|
||||
- **返回值**:模组信息对象
|
||||
- **描述**:检查模组的基本信息和兼容性
|
||||
|
||||
- `checkModCompatibility(modInfo: ModInfo, gameVersion: string, modloader: string): Promise<boolean>`
|
||||
- **参数**:
|
||||
- `modInfo` - 模组信息对象
|
||||
- `gameVersion` - 游戏版本
|
||||
- `modloader` - 模组加载器
|
||||
- **返回值**:是否兼容
|
||||
- **描述**:检查模组与指定游戏版本和加载器的兼容性
|
||||
|
||||
### dearth/ModFilterService.ts
|
||||
|
||||
**功能**:负责根据不同策略过滤模组
|
||||
|
||||
**方法**:
|
||||
|
||||
- `filterMods(mods: ModInfo[], strategy: FilterStrategy): Promise<ModInfo[]>`
|
||||
- **参数**:
|
||||
- `mods` - 模组信息数组
|
||||
- `strategy` - 过滤策略
|
||||
- **返回值**:过滤后的模组数组
|
||||
- **描述**:根据指定策略过滤模组
|
||||
|
||||
- `registerFilterStrategy(name: string, strategy: FilterStrategy): void`
|
||||
- **参数**:
|
||||
- `name` - 策略名称
|
||||
- `strategy` - 过滤策略对象
|
||||
- **返回值**:无
|
||||
- **描述**:注册新的过滤策略
|
||||
|
||||
## 模组加载器模块
|
||||
|
||||
### modloader/fabric.ts
|
||||
|
||||
**功能**:处理 Fabric 模组加载器相关操作
|
||||
|
||||
**方法**:
|
||||
|
||||
- `detectFabricMod(modPath: string): Promise<boolean>`
|
||||
- **参数**:`modPath` - 模组文件路径
|
||||
- **返回值**:是否为 Fabric 模组
|
||||
- **描述**:检测指定文件是否为 Fabric 模组
|
||||
|
||||
- `getFabricModInfo(modPath: string): Promise<ModInfo>`
|
||||
- **参数**:`modPath` - 模组文件路径
|
||||
- **返回值**:模组信息对象
|
||||
- **描述**:获取 Fabric 模组的详细信息
|
||||
|
||||
### modloader/forge.ts
|
||||
|
||||
**功能**:处理 Forge 模组加载器相关操作
|
||||
|
||||
**方法**:
|
||||
|
||||
- `detectForgeMod(modPath: string): Promise<boolean>`
|
||||
- **参数**:`modPath` - 模组文件路径
|
||||
- **返回值**:是否为 Forge 模组
|
||||
- **描述**:检测指定文件是否为 Forge 模组
|
||||
|
||||
- `getForgeModInfo(modPath: string): Promise<ModInfo>`
|
||||
- **参数**:`modPath` - 模组文件路径
|
||||
- **返回值**:模组信息对象
|
||||
- **描述**:获取 Forge 模组的详细信息
|
||||
|
||||
### modloader/neoforge.ts
|
||||
|
||||
**功能**:处理 NeoForge 模组加载器相关操作
|
||||
|
||||
**方法**:
|
||||
|
||||
- `detectNeoForgeMod(modPath: string): Promise<boolean>`
|
||||
- **参数**:`modPath` - 模组文件路径
|
||||
- **返回值**:是否为 NeoForge 模组
|
||||
- **描述**:检测指定文件是否为 NeoForge 模组
|
||||
|
||||
- `getNeoForgeModInfo(modPath: string): Promise<ModInfo>`
|
||||
- **参数**:`modPath` - 模组文件路径
|
||||
- **返回值**:模组信息对象
|
||||
- **描述**:获取 NeoForge 模组的详细信息
|
||||
|
||||
## 平台集成模块
|
||||
|
||||
### platform/curseforge.ts
|
||||
|
||||
**功能**:与 CurseForge API 交互
|
||||
|
||||
**方法**:
|
||||
|
||||
- `searchMods(query: string, gameVersion: string): Promise<ModInfo[]>`
|
||||
- **参数**:
|
||||
- `query` - 搜索关键词
|
||||
- `gameVersion` - 游戏版本
|
||||
- **返回值**:搜索结果数组
|
||||
- **描述**:在 CurseForge 上搜索模组
|
||||
|
||||
- `getModDetails(modId: string): Promise<ModInfo>`
|
||||
- **参数**:`modId` - 模组ID
|
||||
- **返回值**:模组详细信息
|
||||
- **描述**:获取模组的详细信息
|
||||
|
||||
- `downloadMod(modId: string, fileId: string, destination: string): Promise<boolean>`
|
||||
- **参数**:
|
||||
- `modId` - 模组ID
|
||||
- `fileId` - 文件ID
|
||||
- `destination` - 下载目标路径
|
||||
- **返回值**:是否下载成功
|
||||
- **描述**:下载指定模组文件
|
||||
|
||||
### platform/modrinth.ts
|
||||
|
||||
**功能**:与 Modrinth API 交互
|
||||
|
||||
**方法**:
|
||||
|
||||
- `searchMods(query: string, gameVersion: string): Promise<ModInfo[]>`
|
||||
- **参数**:
|
||||
- `query` - 搜索关键词
|
||||
- `gameVersion` - 游戏版本
|
||||
- **返回值**:搜索结果数组
|
||||
- **描述**:在 Modrinth 上搜索模组
|
||||
|
||||
- `getModDetails(modId: string): Promise<ModInfo>`
|
||||
- **参数**:`modId` - 模组ID
|
||||
- **返回值**:模组详细信息
|
||||
- **描述**:获取模组的详细信息
|
||||
|
||||
- `downloadMod(modId: string, versionId: string, destination: string): Promise<boolean>`
|
||||
- **参数**:
|
||||
- `modId` - 模组ID
|
||||
- `versionId` - 版本ID
|
||||
- `destination` - 下载目标路径
|
||||
- **返回值**:是否下载成功
|
||||
- **描述**:下载指定模组文件
|
||||
|
||||
## 模板管理模块
|
||||
|
||||
### template/TemplateManager.ts
|
||||
|
||||
**功能**:负责模板的创建、管理和应用
|
||||
|
||||
**方法**:
|
||||
|
||||
- `createTemplate(name: string, description: string, mods: ModInfo[]): Promise<Template>`
|
||||
- **参数**:
|
||||
- `name` - 模板名称
|
||||
- `description` - 模板描述
|
||||
- `mods` - 模组信息数组
|
||||
- **返回值**:创建的模板对象
|
||||
- **描述**:创建新的模组包模板
|
||||
|
||||
- `getTemplate(templateId: string): Promise<Template>`
|
||||
- **参数**:`templateId` - 模板ID
|
||||
- **返回值**:模板对象
|
||||
- **描述**:获取指定模板的详细信息
|
||||
|
||||
- `listTemplates(): Promise<Template[]>`
|
||||
- **参数**:无
|
||||
- **返回值**:模板数组
|
||||
- **描述**:获取所有模板列表
|
||||
|
||||
- `updateTemplate(templateId: string, updates: Partial<Template>): Promise<Template>`
|
||||
- **参数**:
|
||||
- `templateId` - 模板ID
|
||||
- `updates` - 更新内容
|
||||
- **返回值**:更新后的模板对象
|
||||
- **描述**:更新模板信息
|
||||
|
||||
- `deleteTemplate(templateId: string): Promise<boolean>`
|
||||
- **参数**:`templateId` - 模板ID
|
||||
- **返回值**:是否删除成功
|
||||
- **描述**:删除指定模板
|
||||
|
||||
- `applyTemplate(templateId: string, targetDir: string): Promise<boolean>`
|
||||
- **参数**:
|
||||
- `templateId` - 模板ID
|
||||
- `targetDir` - 目标目录
|
||||
- **返回值**:是否应用成功
|
||||
- **描述**:将模板应用到指定目录
|
||||
|
||||
- `exportTemplate(templateId: string, exportPath: string): Promise<boolean>`
|
||||
- **参数**:
|
||||
- `templateId` - 模板ID
|
||||
- `exportPath` - 导出路径
|
||||
- **返回值**:是否导出成功
|
||||
- **描述**:导出模板为文件
|
||||
|
||||
- `importTemplate(templatePath: string): Promise<Template>`
|
||||
- **参数**:`templatePath` - 模板文件路径
|
||||
- **返回值**:导入的模板对象
|
||||
- **描述**:从文件导入模板
|
||||
|
||||
## 工具模块
|
||||
|
||||
### utils/FileExtractor.ts
|
||||
|
||||
**功能**:负责从模组文件中提取信息
|
||||
|
||||
**方法**:
|
||||
|
||||
- `extractModInfo(jarPath: string): Promise<ModInfo>`
|
||||
- **参数**:`jarPath` - 模组JAR文件路径
|
||||
- **返回值**:模组信息对象
|
||||
- **描述**:从JAR文件中提取模组信息
|
||||
|
||||
- `extractManifest(jarPath: string): Promise<any>`
|
||||
- **参数**:`jarPath` - 模组JAR文件路径
|
||||
- **返回值**:模组清单对象
|
||||
- **描述**:从JAR文件中提取模组清单
|
||||
|
||||
### utils/FileOperator.ts
|
||||
|
||||
**功能**:负责文件操作
|
||||
|
||||
**方法**:
|
||||
|
||||
- `copyFile(source: string, destination: string): Promise<boolean>`
|
||||
- **参数**:
|
||||
- `source` - 源文件路径
|
||||
- `destination` - 目标文件路径
|
||||
- **返回值**:是否复制成功
|
||||
- **描述**:复制文件
|
||||
|
||||
- `deleteFile(path: string): Promise<boolean>`
|
||||
- **参数**:`path` - 文件路径
|
||||
- **返回值**:是否删除成功
|
||||
- **描述**:删除文件
|
||||
|
||||
- `createDirectory(path: string): Promise<boolean>`
|
||||
- **参数**:`path` - 目录路径
|
||||
- **返回值**:是否创建成功
|
||||
- **描述**:创建目录
|
||||
|
||||
- `listFiles(path: string): Promise<string[]>`
|
||||
- **参数**:`path` - 目录路径
|
||||
- **返回值**:文件路径数组
|
||||
- **描述**:列出目录中的文件
|
||||
|
||||
### utils/jar-parser.ts
|
||||
|
||||
**功能**:负责解析JAR文件
|
||||
|
||||
**方法**:
|
||||
|
||||
- `parseJar(jarPath: string): Promise<JarContent>`
|
||||
- **参数**:`jarPath` - JAR文件路径
|
||||
- **返回值**:JAR内容对象
|
||||
- **描述**:解析JAR文件内容
|
||||
|
||||
- `extractFile(jarPath: string, filePath: string, destination: string): Promise<boolean>`
|
||||
- **参数**:
|
||||
- `jarPath` - JAR文件路径
|
||||
- `filePath` - JAR内部文件路径
|
||||
- `destination` - 提取目标路径
|
||||
- **返回值**:是否提取成功
|
||||
- **描述**:从JAR文件中提取指定文件
|
||||
|
||||
## 主入口
|
||||
|
||||
### main.ts
|
||||
|
||||
**功能**:后端应用的主入口
|
||||
|
||||
**方法**:
|
||||
|
||||
- `startServer(): Promise<void>`
|
||||
- **参数**:无
|
||||
- **返回值**:无
|
||||
- **描述**:启动后端服务器
|
||||
|
||||
- `stopServer(): Promise<void>`
|
||||
- **参数**:无
|
||||
- **返回值**:无
|
||||
- **描述**:停止后端服务器
|
||||
|
||||
- `getServerStatus(): ServerStatus`
|
||||
- **参数**:无
|
||||
- **返回值**:服务器状态对象
|
||||
- **描述**:获取服务器状态
|
||||
185
word/api/core.md
Normal file
185
word/api/core.md
Normal file
@@ -0,0 +1,185 @@
|
||||
# 核心模块 API
|
||||
|
||||
## 概述
|
||||
|
||||
DeEarthX-CE 的核心模块提供了应用的基础功能,包括模组管理、模板管理、平台集成等。本章节将详细介绍核心模块的 API 接口。
|
||||
|
||||
## 核心类
|
||||
|
||||
### ModCheckService
|
||||
|
||||
**功能**:负责检查模组的有效性和兼容性
|
||||
|
||||
**方法**:
|
||||
|
||||
- `checkMod(modPath: string): Promise<ModInfo>`
|
||||
- **参数**:`modPath` - 模组文件路径
|
||||
- **返回值**:模组信息对象
|
||||
- **描述**:检查模组的基本信息和兼容性
|
||||
|
||||
- `checkModCompatibility(modInfo: ModInfo, gameVersion: string, modloader: string): Promise<boolean>`
|
||||
- **参数**:
|
||||
- `modInfo` - 模组信息对象
|
||||
- `gameVersion` - 游戏版本
|
||||
- `modloader` - 模组加载器
|
||||
- **返回值**:是否兼容
|
||||
- **描述**:检查模组与指定游戏版本和加载器的兼容性
|
||||
|
||||
### ModFilterService
|
||||
|
||||
**功能**:负责根据不同策略过滤模组
|
||||
|
||||
**方法**:
|
||||
|
||||
- `filterMods(mods: ModInfo[], strategy: FilterStrategy): Promise<ModInfo[]>`
|
||||
- **参数**:
|
||||
- `mods` - 模组信息数组
|
||||
- `strategy` - 过滤策略
|
||||
- **返回值**:过滤后的模组数组
|
||||
- **描述**:根据指定策略过滤模组
|
||||
|
||||
- `registerFilterStrategy(name: string, strategy: FilterStrategy): void`
|
||||
- **参数**:
|
||||
- `name` - 策略名称
|
||||
- `strategy` - 过滤策略对象
|
||||
- **返回值**:无
|
||||
- **描述**:注册新的过滤策略
|
||||
|
||||
### TemplateManager
|
||||
|
||||
**功能**:负责模板的创建、管理和应用
|
||||
|
||||
**方法**:
|
||||
|
||||
- `createTemplate(name: string, description: string, mods: ModInfo[]): Promise<Template>`
|
||||
- **参数**:
|
||||
- `name` - 模板名称
|
||||
- `description` - 模板描述
|
||||
- `mods` - 模组信息数组
|
||||
- **返回值**:创建的模板对象
|
||||
- **描述**:创建新的模组包模板
|
||||
|
||||
- `applyTemplate(templateId: string, targetDir: string): Promise<boolean>`
|
||||
- **参数**:
|
||||
- `templateId` - 模板ID
|
||||
- `targetDir` - 目标目录
|
||||
- **返回值**:是否应用成功
|
||||
- **描述**:将模板应用到指定目录
|
||||
|
||||
- `exportTemplate(templateId: string, exportPath: string): Promise<boolean>`
|
||||
- **参数**:
|
||||
- `templateId` - 模板ID
|
||||
- `exportPath` - 导出路径
|
||||
- **返回值**:是否导出成功
|
||||
- **描述**:导出模板为文件
|
||||
|
||||
## 工具类
|
||||
|
||||
### FileExtractor
|
||||
|
||||
**功能**:负责从模组文件中提取信息
|
||||
|
||||
**方法**:
|
||||
|
||||
- `extractModInfo(jarPath: string): Promise<ModInfo>`
|
||||
- **参数**:`jarPath` - 模组JAR文件路径
|
||||
- **返回值**:模组信息对象
|
||||
- **描述**:从JAR文件中提取模组信息
|
||||
|
||||
### FileOperator
|
||||
|
||||
**功能**:负责文件操作
|
||||
|
||||
**方法**:
|
||||
|
||||
- `copyFile(source: string, destination: string): Promise<boolean>`
|
||||
- **参数**:
|
||||
- `source` - 源文件路径
|
||||
- `destination` - 目标文件路径
|
||||
- **返回值**:是否复制成功
|
||||
- **描述**:复制文件
|
||||
|
||||
- `deleteFile(path: string): Promise<boolean>`
|
||||
- **参数**:`path` - 文件路径
|
||||
- **返回值**:是否删除成功
|
||||
- **描述**:删除文件
|
||||
|
||||
## 平台集成
|
||||
|
||||
### CurseForgeClient
|
||||
|
||||
**功能**:与 CurseForge API 交互
|
||||
|
||||
**方法**:
|
||||
|
||||
- `searchMods(query: string, gameVersion: string): Promise<ModInfo[]>`
|
||||
- **参数**:
|
||||
- `query` - 搜索关键词
|
||||
- `gameVersion` - 游戏版本
|
||||
- **返回值**:搜索结果数组
|
||||
- **描述**:在 CurseForge 上搜索模组
|
||||
|
||||
- `getModDetails(modId: string): Promise<ModInfo>`
|
||||
- **参数**:`modId` - 模组ID
|
||||
- **返回值**:模组详细信息
|
||||
- **描述**:获取模组的详细信息
|
||||
|
||||
### ModrinthClient
|
||||
|
||||
**功能**:与 Modrinth API 交互
|
||||
|
||||
**方法**:
|
||||
|
||||
- `searchMods(query: string, gameVersion: string): Promise<ModInfo[]>`
|
||||
- **参数**:
|
||||
- `query` - 搜索关键词
|
||||
- `gameVersion` - 游戏版本
|
||||
- **返回值**:搜索结果数组
|
||||
- **描述**:在 Modrinth 上搜索模组
|
||||
|
||||
- `getModDetails(modId: string): Promise<ModInfo>`
|
||||
- **参数**:`modId` - 模组ID
|
||||
- **返回值**:模组详细信息
|
||||
- **描述**:获取模组的详细信息
|
||||
|
||||
## 类型定义
|
||||
|
||||
### ModInfo
|
||||
|
||||
```typescript
|
||||
interface ModInfo {
|
||||
id: string;
|
||||
name: string;
|
||||
version: string;
|
||||
description: string;
|
||||
authors: string[];
|
||||
gameVersions: string[];
|
||||
modLoaders: string[];
|
||||
dependencies: string[];
|
||||
fileSize: number;
|
||||
hash: string;
|
||||
source: string; // curseforge, modrinth, local
|
||||
}
|
||||
```
|
||||
|
||||
### Template
|
||||
|
||||
```typescript
|
||||
interface Template {
|
||||
id: string;
|
||||
name: string;
|
||||
description: string;
|
||||
mods: ModInfo[];
|
||||
createdAt: string;
|
||||
updatedAt: string;
|
||||
}
|
||||
```
|
||||
|
||||
### FilterStrategy
|
||||
|
||||
```typescript
|
||||
interface FilterStrategy {
|
||||
name: string;
|
||||
filter: (mod: ModInfo) => boolean;
|
||||
}
|
||||
```
|
||||
243
word/api/frontend.md
Normal file
243
word/api/frontend.md
Normal file
@@ -0,0 +1,243 @@
|
||||
# 前端 API
|
||||
|
||||
## 概述
|
||||
|
||||
DeEarthX-CE 的前端模块使用 Vue 3 + Vite 开发,提供了用户界面和与后端的交互功能。本章节将详细介绍前端模块的 API 接口。
|
||||
|
||||
## 项目结构
|
||||
|
||||
前端模块包含以下主要目录:
|
||||
|
||||
- `src/components/` - 组件目录
|
||||
- `src/views/` - 页面视图目录
|
||||
- `src/utils/` - 工具函数目录
|
||||
- `src/assets/` - 资源文件目录
|
||||
- `lang/` - 语言文件目录
|
||||
|
||||
## 组件
|
||||
|
||||
### ModeSelector.vue
|
||||
|
||||
**功能**:模式选择组件,用于选择不同的操作模式
|
||||
|
||||
**属性**:
|
||||
|
||||
- `modes` - 模式数组,包含模式名称和图标
|
||||
- `selectedMode` - 当前选中的模式
|
||||
- `@mode-change` - 模式变更事件
|
||||
|
||||
**方法**:
|
||||
|
||||
- `selectMode(mode: string): void` - 选择指定模式
|
||||
|
||||
### ProgressCard.vue
|
||||
|
||||
**功能**:进度卡片组件,用于显示操作进度
|
||||
|
||||
**属性**:
|
||||
|
||||
- `title` - 卡片标题
|
||||
- `progress` - 进度值(0-100)
|
||||
- `status` - 状态(loading, success, error)
|
||||
- `message` - 状态消息
|
||||
|
||||
**方法**:
|
||||
|
||||
- `updateProgress(progress: number): void` - 更新进度
|
||||
- `setStatus(status: string, message: string): void` - 更新状态
|
||||
|
||||
### StepIndicator.vue
|
||||
|
||||
**功能**:步骤指示器组件,用于显示多步骤操作的进度
|
||||
|
||||
**属性**:
|
||||
|
||||
- `steps` - 步骤数组
|
||||
- `currentStep` - 当前步骤索引
|
||||
|
||||
**方法**:
|
||||
|
||||
- `goToStep(step: number): void` - 跳转到指定步骤
|
||||
|
||||
### WebSocketHandler.vue
|
||||
|
||||
**功能**:WebSocket 处理组件,用于与后端进行实时通信
|
||||
|
||||
**属性**:
|
||||
|
||||
- `url` - WebSocket 服务器 URL
|
||||
- `@message` - 接收消息事件
|
||||
- `@connected` - 连接成功事件
|
||||
- `@disconnected` - 连接断开事件
|
||||
|
||||
**方法**:
|
||||
|
||||
- `sendMessage(data: any): void` - 发送消息
|
||||
- `connect(): void` - 建立连接
|
||||
- `disconnect(): void` - 断开连接
|
||||
|
||||
## 页面视图
|
||||
|
||||
### Main.vue
|
||||
|
||||
**功能**:主页面组件
|
||||
|
||||
**方法**:
|
||||
|
||||
- `initializeApp(): void` - 初始化应用
|
||||
- `loadUserSettings(): void` - 加载用户设置
|
||||
- `handleModeChange(mode: string): void` - 处理模式变更
|
||||
|
||||
### DeEarthView.vue
|
||||
|
||||
**功能**:DeEarth 模式页面
|
||||
|
||||
**方法**:
|
||||
|
||||
- `loadMods(): void` - 加载模组列表
|
||||
- `addMod(): void` - 添加模组
|
||||
- `removeMod(modId: string): void` - 移除模组
|
||||
- `toggleMod(modId: string): void` - 切换模组状态
|
||||
|
||||
### GalaxyView.vue
|
||||
|
||||
**功能**:Galaxy 模式页面
|
||||
|
||||
**方法**:
|
||||
|
||||
- `loadTemplates(): void` - 加载模板列表
|
||||
- `createTemplate(): void` - 创建模板
|
||||
- `applyTemplate(templateId: string): void` - 应用模板
|
||||
- `exportTemplate(templateId: string): void` - 导出模板
|
||||
|
||||
### SettingView.vue
|
||||
|
||||
**功能**:设置页面
|
||||
|
||||
**方法**:
|
||||
|
||||
- `loadSettings(): void` - 加载设置
|
||||
- `saveSettings(): void` - 保存设置
|
||||
- `changeLanguage(language: string): void` - 更改语言
|
||||
|
||||
### AboutView.vue
|
||||
|
||||
**功能**:关于页面
|
||||
|
||||
**方法**:
|
||||
|
||||
- `loadVersionInfo(): void` - 加载版本信息
|
||||
- `checkForUpdates(): void` - 检查更新
|
||||
|
||||
### TemplateView.vue
|
||||
|
||||
**功能**:模板管理页面
|
||||
|
||||
**方法**:
|
||||
|
||||
- `loadTemplates(): void` - 加载模板列表
|
||||
- `createTemplate(): void` - 创建模板
|
||||
- `editTemplate(templateId: string): void` - 编辑模板
|
||||
- `deleteTemplate(templateId: string): void` - 删除模板
|
||||
|
||||
### ErrorView.vue
|
||||
|
||||
**功能**:错误页面
|
||||
|
||||
**属性**:
|
||||
|
||||
- `error` - 错误信息
|
||||
|
||||
**方法**:
|
||||
|
||||
- `retry(): void` - 重试操作
|
||||
- `goHome(): void` - 返回首页
|
||||
|
||||
## 工具函数
|
||||
|
||||
### axios.ts
|
||||
|
||||
**功能**:HTTP 请求工具
|
||||
|
||||
**方法**:
|
||||
|
||||
- `get<T>(url: string, params?: any): Promise<T>` - 发送 GET 请求
|
||||
- `post<T>(url: string, data?: any): Promise<T>` - 发送 POST 请求
|
||||
- `put<T>(url: string, data?: any): Promise<T>` - 发送 PUT 请求
|
||||
- `delete<T>(url: string): Promise<T>` - 发送 DELETE 请求
|
||||
|
||||
### i18n.ts
|
||||
|
||||
**功能**:国际化工具
|
||||
|
||||
**方法**:
|
||||
|
||||
- `loadLanguage(language: string): Promise<void>` - 加载指定语言
|
||||
- `t(key: string): string` - 翻译指定键
|
||||
- `getCurrentLanguage(): string` - 获取当前语言
|
||||
|
||||
### router.ts
|
||||
|
||||
**功能**:路由工具
|
||||
|
||||
**方法**:
|
||||
|
||||
- `navigateTo(path: string): void` - 导航到指定路径
|
||||
- `goBack(): void` - 返回上一页
|
||||
- `getCurrentRoute(): string` - 获取当前路由
|
||||
|
||||
## 状态管理
|
||||
|
||||
前端使用 Vue 的响应式系统进行状态管理,主要状态包括:
|
||||
|
||||
- `mods` - 模组列表
|
||||
- `templates` - 模板列表
|
||||
- `settings` - 用户设置
|
||||
- `currentMode` - 当前模式
|
||||
- `isLoading` - 加载状态
|
||||
- `error` - 错误信息
|
||||
|
||||
## API 调用
|
||||
|
||||
前端通过以下方式与后端进行交互:
|
||||
|
||||
1. **HTTP 请求**:使用 axios 发送 RESTful API 请求
|
||||
2. **WebSocket**:使用 WebSocketHandler 组件进行实时通信
|
||||
3. **本地存储**:使用 localStorage 存储用户设置和缓存数据
|
||||
|
||||
## 语言支持
|
||||
|
||||
前端支持多种语言,语言文件位于 `lang/` 目录:
|
||||
|
||||
- `zh_cn.json` - 简体中文
|
||||
- `zh_tw.json` - 繁体中文
|
||||
- `zh_hk.json` - 香港中文
|
||||
- `en_us.json` - 英文
|
||||
- `ja_jp.json` - 日文
|
||||
- `fr_fr.json` - 法文
|
||||
- `es_es.json` - 西班牙文
|
||||
- `de_de.json` - 德文
|
||||
|
||||
## 主题与样式
|
||||
|
||||
前端使用 Tailwind CSS 进行样式管理,支持响应式布局和主题定制。
|
||||
|
||||
## 构建与部署
|
||||
|
||||
### 开发模式
|
||||
|
||||
```bash
|
||||
npm run dev
|
||||
```
|
||||
|
||||
### 构建生产版本
|
||||
|
||||
```bash
|
||||
npm run build
|
||||
```
|
||||
|
||||
### 预览生产版本
|
||||
|
||||
```bash
|
||||
npm run preview
|
||||
```
|
||||
Reference in New Issue
Block a user