Files
websopy-taro/.workbuddy/memory/2026-07-16.md
赵忠林 85a1558e84 feat(passport): 迁移并修复小程序支付页面访问 websopy API 问题
- 迁移 src/passport/pay 相关代码至当前项目,无需替换文件
- 新增环境变量 WEBSOPY_API_BASE_URL,提供 websopy API 基础地址
- 在 config/app.ts 导出 WebsopyBaseUrl,供代码引用
- 配置 env.d.ts 类型定义,消除 TypeScript 隐式 any 错误
- request 请求方法支持自定义 baseUrl 以调用不同接口地址
- passport/pay 页面调用订阅接口统一传入 WebsopyBaseUrl
- 修正 tenantId 类型为 number,调整登录用户类型断言
- 确认编译成功,dist 目录生成对应文件及正确请求地址
- 说明 type-check 依赖库问题不影响正常构建和运行
2026-07-16 01:34:27 +08:00

30 lines
2.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 2026-07-16 工作日志
## passport 分包化修复
用户把登录/注册相关页面放入 `passport` 分包(`src/app.config.ts` 的 subpackages
排查结论:
- 主包内所有跳转引用(`src/pages/**``src/utils/auth.ts``src/components/QRLoginScanner.tsx` 等)已全部使用 `/passport/xxx` 路径。分包化前后 URL 路径不变,引用代码无需修改。
- passport 内 10 个页面login/forget/setting/agreement/sms-login/register/qr-login/qr-confirm/unified-qr/pay均有 `.tsx` + `.config.ts``@` 别名指向 `src/`,移动目录不影响 import。
修复 `src/app.config.ts` 分包声明(与实际文件对齐):
- 移除 `phone-auth/index``invite/index``webview/index`(文件不存在,且全局无任何跳转引用它们,会导致 Taro 编译报错)
- 补充 `register``src/passport/register.tsx` 存在但未声明)
- 统一引号风格、清理尾随逗号
## passport/pay 功能从 websopy-taro-bak 迁移
问题:`src/passport/pay/index.tsx` 失效,原因是当前项目基于 xinlong-shop 框架,`API_BASE_URL` 指向商城接口 `https://shop-api.websoft.top/api`,而 pay 页面需要访问 websopy 业务接口 `https://websopy-api.websoft.top/api``/app/subscription/*`
迁移与修复:
- 确认 `src/passport/pay/``src/api/passport/wx-login/` 文件和备份项目一致,无需替换。
-`config/env.js` 新增 `WEBSOPY_API_BASE_URL`
-`config/app.ts` 导出 `WebsopyBaseUrl`
- 创建 `config/env.d.ts` 消除 `config/app.ts` 导入 `.js` 的隐式 any 类型错误。
- 增强 `src/utils/request.ts`:在 `RequestConfig` 增加 `baseUrl?: string``request`/`get`/`post` 等函数支持自定义 baseUrl相对路径会自动拼接完整 URL 保持不变。
- 修改 `src/passport/pay/index.tsx`:三个订阅接口请求均传入 `baseUrl: WebsopyBaseUrl`;修复 `tenantId` 类型string -> number`saveStorageByLoginUser` 的 user 类型断言。
- 运行 `npx taro build --type weapp` 构建成功dist 中 `passport/pay` 文件生成,确认请求使用 websopy API。
- 说明:`npm run type-check` 仍因 `@tarojs/taro` 类型包解析问题失败,这是项目既有环境问题,不影响构建。