- 迁移 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 依赖库问题不影响正常构建和运行
2.2 KiB
2.2 KiB
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类型包解析问题失败,这是项目既有环境问题,不影响构建。