Update environment configuration and enhance asset loading:

- Change development API proxy target to `https://192.168.3.233` and set base URL for recurring investment.
- Introduce `.env.production` for production environment with similar settings.
- Modify `loadExchangeAssets` to support pagination and scrolling for asset loading, improving user experience.
- Update related documentation and internationalization files for new features.
This commit is contained in:
justin
2026-10-10 16:24:01 +08:00
parent ffba1861be
commit 57b026d7d0
15 changed files with 286 additions and 60 deletions
+103 -4
View File
@@ -52,7 +52,7 @@
### 1. 改动概览
- **背景与目标**:与 Order-H5 一致,支持 URL `token` 写入请求头;本地开发代理到 `192.168.3.230:18000`;通过 `getAllList` 加载服务端多语言。
- **背景与目标**:与 Order-H5 一致,支持 URL `token` 写入请求头;本地开发代理到 `192.168.3.233`;通过 `getAllList` 加载服务端多语言。
- **涉及模块**:`vite.config.ts`、`src/api/http.ts`、`src/stores/auth.ts`、`src/stores/serviceI18n.ts`、`src/api/base.ts`、`src/api/scheduleInvestment.ts`、`src/main.ts`、`src/App.vue`。
- **改动类型**:配置变更 + 基础设施。
@@ -60,7 +60,7 @@
| 位置 | 差异 |
|------|------|
| `vite.config.ts` | `/base`、`/trade` 代理至 `VITE_API_PROXY_TARGET`(默认 `http://192.168.3.230:18000`)。 |
| `vite.config.ts` | `/base`、`/trade` 代理至 `VITE_API_PROXY_TARGET`(默认 `https://192.168.3.233`)。 |
| `.env.development` | `VITE_API_BASE_URL` 置空;新增 `VITE_API_PROXY_TARGET`。 |
| `src/api/http.ts` | 请求头 `token`、`Accept-Language`;统一 `code === '0'` 成功处理。 |
| `src/utils/token.ts` / `stores/auth.ts` | URL 优先解析 token 并持久化(localStorage)。 |
@@ -89,7 +89,7 @@
| 配置项 | 含义 | Dev 默认 |
|--------|------|----------|
| `VITE_API_PROXY_TARGET` | Vite 代理目标主机 | `http://192.168.3.230:18000` |
| `VITE_API_PROXY_TARGET` | Vite 代理目标主机 | `https://192.168.3.233` |
| `VITE_API_BASE_URL` | Axios baseURL,空则同源 | 空 |
---
@@ -146,7 +146,7 @@
### 1. 改动概览
- **背景与目标**:创建表单在选定交易所后,从 `POST /product/product/getSimpleStockPage` 拉取可投标的,请求体 `exchangeCodes` 为交易所下拉选中值;支持 `searchName` 与 `isUpdatedToday: true`。
- **背景与目标**:创建表单在选定交易所后,从 `POST /product/product/getSimpleStockPage` 拉取可投标的,请求体 `exchangeCodes` 为交易所下拉选中值;支持 `searchName`。
- **涉及模块**:`src/api/product.ts`、`vite.config.ts`(`/product` 代理)、`RecurringInvestmentView.vue`、`AssetChipPicker.vue`、`InvestAsset` 类型、i18n。
- **改动类型**:功能新增。
@@ -738,3 +738,102 @@
### 5. 验证与测试
- `npm run build`。
---
## 补充:VITE_BASE_URL 接入 Vite base(2026-10-10)
### 1. 改动概览
- **背景与目标**:`.env.development` 已配置 `VITE_BASE_URL=/recurring-investment`,需写入 Vite `base`,使静态资源与 Vue Router 子路径部署一致。
- **涉及模块**:`vite.config.ts`、`src/env.d.ts`、`.env.production`、`README.md`。
- **改动类型**:配置变更。
### 2. 方法级改动分析
| 位置 | 差异 |
|------|------|
| `vite.config.ts` | `loadEnv` 读取 `VITE_BASE_URL`,经 `resolveViteBase` 设置 `base`(子路径末尾补 `/`)。 |
| `.env.production` | 新增,与开发环境一致的 `VITE_BASE_URL` / `VITE_API_BASE_URL`。 |
| `src/router/index.ts` | 无改;已使用 `createWebHistory(import.meta.env.BASE_URL)`。 |
### 3. 调用方与影响范围
- 开发与生产入口 URL 为 `/recurring-investment/`(非根路径 `/`)。
- 网关/Nginx 需将应用挂载到同子路径或做等价转发。
- **破坏性变更**:是(若此前按根路径 `/` 访问或部署,需改为带子路径)。
### 4. 风险与回滚
- **风险级别**:低。
- **回滚**:删除或清空 `VITE_BASE_URL`,移除 `vite.config.ts` 的 `base` 绑定。
- **回滚方式是否简单**:是。
### 5. 验证与测试
- `npm run build`;本地 `npm run dev` 访问 `http://localhost:5173/recurring-investment/`。
---
## 补充:仅创建计划请求体携带 clientId / accountId(2026-10-10)
### 1. 改动概览
- **背景与目标**:除「新建定投计划」外,其余交易/产品/基础接口不应在请求体中附带 URL 解析的 `clientId`、`accountId`。
- **涉及模块**:`src/api/http.ts`。
- **改动类型**:缺陷修复。
### 2. 方法级改动分析
| 位置 | 差异 |
|------|------|
| `src/api/http.ts` | 移除请求拦截器对 POST `data` 的全局合并 `clientId`/`accountId`。 |
| `src/utils/scheduleInvestmentPayload.ts` / `RecurringInvestmentView.vue` | 无改;创建计划仍通过 `buildScheduleInvestmentCreateBody` 显式写入两字段。 |
### 3. 调用方与影响范围
- 经 `http` 的列表、详情、终止、CT 选项、下次执行预览、`getSimpleStockPage`、`getAllList` 等不再自动附带账户上下文。
- **破坏性变更**:否(与后端契约对齐;创建接口行为不变)。
### 4. 风险与回滚
- **风险级别**:低。
- **回滚**:恢复 `http.ts` 拦截器中的合并逻辑。
- **回滚方式是否简单**:是。
### 5. 验证与测试
- `npm run build`;创建计划请求体仍含 `clientId`/`accountId`;其它 POST 仅含业务字段。
---
## 补充:资产下拉分页与滚动加载(2026-10-10)
### 1. 改动概览
- **背景与目标**:创建表单资产搜索不再单次请求 `size: 100000`;改为每页 50 条,下拉滚动触底追加加载。
- **涉及模块**:`RecurringInvestmentView.vue`、`AssetChipPicker.vue`、i18n。
- **改动类型**:性能优化 / 体验改进。
### 2. 方法级改动分析
| 位置 | 差异 |
|------|------|
| `RecurringInvestmentView.vue` | `loadExchangeAssets` 支持 `current` 递增与 `append`;维护 `assetHasMore` / `assetPage` / `assetSearchKeyword`;`onAssetLoadMore` 处理触底。 |
| `AssetChipPicker.vue` | `.asset-drop` 滚动监听,触发 `loadMore`;展示 `hasMore` / `loadingMore` 底部提示。 |
| i18n | 新增 `recurring.assetScrollHint`。 |
### 3. 调用方与影响范围
- 仅定期投资创建表单资产晶片;搜索防抖仍传 `searchName` 并重置为第一页。
- **破坏性变更**:否。
### 4. 风险与回滚
- **风险级别**:低;若后端 `current` 为 1 起始需与现用 0 起始对齐(与原实现一致)。
- **回滚**:恢复单次大 `size` 请求并移除 `loadMore` 链路。
- **回滚方式是否简单**:是。
### 5. 验证与测试
- `npm run build`;交易所切换、搜索、下拉滚动加载更多。