# UniApp开发

## 规则（Rules）

# UniApp开发规范

## 适用对象和范围

本规范适用于所有使用uni-app框架进行多端应用开发的场景。

---

## 1. 平台兼容性规范

**规则**：禁止使用不支持的平台API，必须查阅uni-app平台兼容性文档。

**违反后果**：使用不兼容API导致某平台运行异常。

---

## 2. 条件编译规范

**规则**：平台差异代码必须使用条件编译语法隔离。

- ✅ 正确：`<!-- #ifdef H5 -->` / `<!-- #ifdef MP-WEIXIN -->`
- ❌ 错误：在代码中写平台特定逻辑但不加条件编译

**违反后果**：未隔离的平台差异代码导致其他平台编译错误。

---

## 3. 多端测试规范

**规则**：禁止在未测试多端的情况下交付。

**违反后果**：未经多端测试导致上线后某平台功能异常。

## 方法（Methods）

# UniApp开发方法

## 前置条件

- [ ] 已获取需求文档
- [ ] 已确定目标平台

## 流程概览

分析需求 → 创建项目配置 → 开发页面和组件 → 多端适配 → 兼容性测试 → 打包交付

## 详细步骤

### 步骤1：分析需求
分析需求文档，确定目标平台。

### 步骤2：创建项目配置
编写 pages.json、manifest.json 和 uni.scss 等配置文件。

### 步骤3：开发页面和组件
编写Vue单文件组件实现页面功能。

## 技巧（Tips）

# UniApp开发技巧

## 1. 使用条件编译处理平台差异

**适用场景**：不同平台需要不同实现时。

**具体做法**：使用 `#ifdef` / `#ifndef` 条件编译语法。

**示例**：
```vue
<!-- #ifdef H5 -->
<view>Web端专属内容</view>
<!-- #endif -->
<!-- #ifdef MP-WEIXIN -->
<view>微信小程序专属内容</view>
<!-- #endif -->
```

## 2. 封装适配层

**适用场景**：平台差异较大的功能。

**具体做法**：封装统一的适配层接口，内部使用条件编译处理差异。

## 3. 常见问题速查

| 问题 | 原因 | 解决方案 |
|------|------|---------|
| 某平台渲染异常 | 条件编译遗漏 | 检查是否遗漏平台判断 |
| 打包失败 | manifest.json配置错误 | 检查manifest.json配置 |
| 功能异常 | 使用了不支持的API | 查阅uni-app平台兼容性文档 |
