166 lines
3.9 KiB
Markdown
166 lines
3.9 KiB
Markdown
# pages.json配置错误修复说明 - 2026-02-01
|
||
|
||
## 问题描述
|
||
|
||
小程序编译时报错:
|
||
```
|
||
app.json 文件内容错误: app.json: 未找到 ["subPackages"][7]["pages"][0] 对应的 activity-package/pages/course/detail.wxml 文件
|
||
```
|
||
|
||
## 根本原因
|
||
|
||
`pages.json` 中 `activity-package` 分包配置了一个不存在的页面路径:
|
||
|
||
**错误配置**:
|
||
```json
|
||
{
|
||
"root": "activity-package",
|
||
"name": "activity",
|
||
"pages": [
|
||
{
|
||
"path": "pages/course/detail", // ❌ 错误:这个路径不存在
|
||
"style": {
|
||
"navigationBarTitleText": "课程详情"
|
||
}
|
||
}
|
||
]
|
||
}
|
||
```
|
||
|
||
**实际目录结构**:
|
||
```
|
||
activity-package/
|
||
├── pages/
|
||
│ ├── academy/
|
||
│ │ ├── course-detail.vue ✅ 正确的文件
|
||
│ │ ├── detail.vue
|
||
│ │ └── index.vue
|
||
│ ├── activity/
|
||
│ ├── camp/
|
||
│ ├── growth/
|
||
│ ├── interest/
|
||
│ ├── study-tour/
|
||
│ └── supervision/
|
||
└── static/
|
||
```
|
||
|
||
`activity-package` 中没有 `course` 目录,只有 `academy` 目录,课程详情页面是 `academy/course-detail.vue`。
|
||
|
||
## 修复方案
|
||
|
||
修改 `pages.json` 中的路径配置:
|
||
|
||
**修复后的配置**:
|
||
```json
|
||
{
|
||
"root": "activity-package",
|
||
"name": "activity",
|
||
"pages": [
|
||
{
|
||
"path": "pages/academy/course-detail", // ✅ 正确路径
|
||
"style": {
|
||
"navigationBarTitleText": "课程详情"
|
||
}
|
||
}
|
||
]
|
||
}
|
||
```
|
||
|
||
## 修复步骤
|
||
|
||
### 1. 修改配置文件 ✅
|
||
|
||
已修改 `peidu/uniapp/src/pages.json` 文件
|
||
|
||
### 2. 清除编译缓存
|
||
|
||
**方式1:在微信开发者工具中**
|
||
1. 点击菜单栏"工具" → "清除缓存"
|
||
2. 选择"清除数据缓存"和"清除文件缓存"
|
||
3. 点击"清除"按钮
|
||
|
||
**方式2:手动删除(需要先关闭微信开发者工具)**
|
||
1. 关闭微信开发者工具
|
||
2. 删除以下目录:
|
||
- `peidu/uniapp/dist`
|
||
- `peidu/uniapp/unpackage`
|
||
- `peidu/uniapp/node_modules/.cache`
|
||
|
||
### 3. 重新编译
|
||
|
||
在微信开发者工具中点击"编译"按钮
|
||
|
||
## 注意事项
|
||
|
||
1. **清除缓存前必须关闭微信开发者工具**
|
||
- 如果工具正在运行,文件会被占用,无法删除
|
||
|
||
2. **确保后端服务已启动**
|
||
- 端口8089应该可用
|
||
- 如果被占用,先停止旧进程
|
||
|
||
3. **游客模式配置已完成**
|
||
- 后端已添加所有公开接口到白名单
|
||
- 前端已配置游客模式逻辑
|
||
|
||
## 完整的修复流程
|
||
|
||
### 步骤1:修复pages.json配置 ✅
|
||
已完成
|
||
|
||
### 步骤2:重启后端服务
|
||
```bash
|
||
# 查找占用8089端口的进程
|
||
netstat -ano | findstr :8089
|
||
|
||
# 停止进程
|
||
taskkill /F /PID <PID>
|
||
|
||
# 在IDEA中重新启动 PeiduApplication
|
||
```
|
||
|
||
### 步骤3:清除前端缓存并重新编译
|
||
```bash
|
||
# 关闭微信开发者工具
|
||
|
||
# 删除缓存目录
|
||
cd peidu/uniapp
|
||
rmdir /s /q dist
|
||
rmdir /s /q unpackage
|
||
rmdir /s /q node_modules\.cache
|
||
|
||
# 重新打开微信开发者工具并编译
|
||
```
|
||
|
||
## 测试验证
|
||
|
||
编译成功后,测试以下功能:
|
||
|
||
### 1. 游客模式测试
|
||
- [ ] 专项突破列表显示正常
|
||
- [ ] 兴趣培养列表显示正常
|
||
- [ ] 测评师列表显示正常
|
||
- [ ] 成长规划师列表显示正常
|
||
- [ ] 课程详情页显示正常
|
||
|
||
### 2. 登录拦截测试
|
||
- [ ] 点击"立即预约"提示登录
|
||
- [ ] 点击"立即购买"提示登录
|
||
- [ ] 登录后可以正常预约和购买
|
||
|
||
## 涉及的文件
|
||
|
||
### 修改的文件
|
||
- `peidu/uniapp/src/pages.json` - 修复了activity-package的页面路径配置
|
||
|
||
### 相关文件
|
||
- `peidu/uniapp/src/activity-package/pages/academy/course-detail.vue` - 实际的课程详情页面
|
||
- `peidu/backend/src/main/java/com/peidu/config/WebMvcConfig.java` - 后端游客模式配置
|
||
- `peidu/uniapp/src/utils/request.js` - 前端游客模式配置
|
||
|
||
## 总结
|
||
|
||
这是一个配置错误,`pages.json` 中配置的页面路径与实际文件路径不匹配。修复后需要清除编译缓存并重新编译才能生效。
|
||
|
||
同时,游客模式的后端和前端配置都已完成,重新编译后应该可以正常工作。
|