# 登录后路由跳转修复设计文档

## 问题描述

当前小程序登录成功后，系统会根据用户是否已有资料（`hasProfile`）进行分支路由：
- 有资料 → 爽文生成页面 (`/pages/main/index?tab=script`)
- 无资料 → 编辑资料页面 (`/pages/onboarding/index`)

这导致新用户或资料不完整的用户登录后被迫进入编辑资料页面，而非核心的爽文生成页面。产品要求登录后统一进入爽文生成页，不再强制填写资料。

## 方案概述

采用**方案 A**：直接移除登录后的资料检查，统一路由到爽文生成页。

编辑资料页面（`onboarding/index.vue`）继续保留，用户可从"我的" tab 中的编辑资料入口主动进入。

## 具体改动

### 1. `mini-program/src/pages/login/index.vue`

修改 `routeAfterLogin` 函数，移除 `profileReady` 参数和条件判断，登录成功后一律跳转至爽文生成页：

```javascript
const routeAfterLogin = () => {
  uni.redirectTo({ url: '/pages/main/index?tab=script' })
}
```

调用处同步更新：
- `handleWechatLogin` 中：`routeAfterLogin()`
- `handleLogin` 中：`routeAfterLogin()`

### 2. `mini-program/src/pages/splash/index.vue`

修改 `resolveInitialRoute` 函数中已登录用户的跳转逻辑：

```javascript
if (session.status === store.SESSION_STATUS.AUTHENTICATED) {
  routeOnce('/pages/main/index?tab=script', { reason: session.reason })
  return
}
```

不再根据 `session.hasProfile` 进行分支。

### 3. 保留内容

- `stores/app.js` 中的 `hasProfile` computed 属性**不做修改**，它仍可在其他场景（如判断是否需要引导补充资料）中使用。
- `onboarding/index.vue` 页面**不做修改**，保留为独立的编辑资料页面。

## 数据流影响

- 登录流程：`login/splash` → `main/index?tab=script`
- 资料编辑入口：用户主动从"我的" tab 进入 `profile/index` 或 `onboarding/index`
- 无后端接口变更

## 测试验证

1. 新用户手机号登录成功后，直接进入爽文生成页面（底部 tab 高亮"爽文生成"）
2. 新用户微信登录成功后，同样直接进入爽文生成页面
3. 已登录用户冷启动（splash 页恢复会话），直接进入爽文生成页面
4. 从"我的" tab 点击编辑资料，仍可正常进入资料编辑页面
5. 资料编辑页面保存后，仍可正常返回爽文生成页面
