|
|
@@ -59,18 +59,16 @@ Draft
|
|
|
- 地区显示文本通过 `getAreaDisplayText` 函数生成
|
|
|
|
|
|
### 环境变量配置方案
|
|
|
-只需要配置地区ID,地区名称可以通过ID从后端API动态获取:
|
|
|
-- `TARO_APP_DEFAULT_START_PROVINCE_ID` - 默认出发省份ID
|
|
|
-- `TARO_APP_DEFAULT_START_CITY_ID` - 默认出发城市ID
|
|
|
-- `TARO_APP_DEFAULT_START_DISTRICT_ID` - 默认出发区县ID
|
|
|
+只需要配置**目的地**的地区ID,地区名称可以通过ID从后端API动态获取:
|
|
|
- `TARO_APP_DEFAULT_END_PROVINCE_ID` - 默认目的省份ID
|
|
|
- `TARO_APP_DEFAULT_END_CITY_ID` - 默认目的城市ID
|
|
|
- `TARO_APP_DEFAULT_END_DISTRICT_ID` - 默认目的区县ID
|
|
|
|
|
|
**理由**:
|
|
|
- 地区名称可以通过ID从后端API动态获取,确保名称始终最新
|
|
|
-- 减少环境变量的配置复杂度
|
|
|
+- 减少环境变量的配置复杂度(从6个减少到3个)
|
|
|
- 符合现有代码的实现模式(通过ID查找名称)
|
|
|
+- 用户通常更关心目的地,出发地可以保持为空让用户选择
|
|
|
|
|
|
### 全局类型定义更新
|
|
|
需要在 `mini/types/global.d.ts` 文件的 `ProcessEnv` 接口中添加新的环境变量类型定义:
|
|
|
@@ -79,10 +77,7 @@ declare namespace NodeJS {
|
|
|
interface ProcessEnv {
|
|
|
// 现有环境变量...
|
|
|
|
|
|
- // 默认目的地配置(只需要配置ID)
|
|
|
- TARO_APP_DEFAULT_START_PROVINCE_ID?: string
|
|
|
- TARO_APP_DEFAULT_START_CITY_ID?: string
|
|
|
- TARO_APP_DEFAULT_START_DISTRICT_ID?: string
|
|
|
+ // 默认目的地配置(只需要配置目的地的ID)
|
|
|
TARO_APP_DEFAULT_END_PROVINCE_ID?: string
|
|
|
TARO_APP_DEFAULT_END_CITY_ID?: string
|
|
|
TARO_APP_DEFAULT_END_DISTRICT_ID?: string
|
|
|
@@ -105,12 +100,6 @@ const [searchParams, setSearchParams] = useState<SearchParams>({
|
|
|
|
|
|
// 修改后逻辑
|
|
|
const [searchParams, setSearchParams] = useState<SearchParams>(() => {
|
|
|
- const defaultStartIds = process.env.TARO_APP_DEFAULT_START_PROVINCE_ID ? [
|
|
|
- Number(process.env.TARO_APP_DEFAULT_START_PROVINCE_ID),
|
|
|
- Number(process.env.TARO_APP_DEFAULT_START_CITY_ID),
|
|
|
- Number(process.env.TARO_APP_DEFAULT_START_DISTRICT_ID)
|
|
|
- ].filter(id => id) : undefined
|
|
|
-
|
|
|
const defaultEndIds = process.env.TARO_APP_DEFAULT_END_PROVINCE_ID ? [
|
|
|
Number(process.env.TARO_APP_DEFAULT_END_PROVINCE_ID),
|
|
|
Number(process.env.TARO_APP_DEFAULT_END_CITY_ID),
|
|
|
@@ -121,7 +110,7 @@ const [searchParams, setSearchParams] = useState<SearchParams>(() => {
|
|
|
date: new Date().toISOString().split('T')[0],
|
|
|
vehicleType: 'bus',
|
|
|
travelMode: 'carpool',
|
|
|
- startAreaIds: defaultStartIds,
|
|
|
+ startAreaIds: undefined,
|
|
|
endAreaIds: defaultEndIds
|
|
|
}
|
|
|
})
|
|
|
@@ -203,9 +192,6 @@ const originalEnv = process.env
|
|
|
beforeEach(() => {
|
|
|
process.env = {
|
|
|
...originalEnv,
|
|
|
- TARO_APP_DEFAULT_START_PROVINCE_ID: '1',
|
|
|
- TARO_APP_DEFAULT_START_CITY_ID: '2',
|
|
|
- TARO_APP_DEFAULT_START_DISTRICT_ID: '3',
|
|
|
TARO_APP_DEFAULT_END_PROVINCE_ID: '4',
|
|
|
TARO_APP_DEFAULT_END_CITY_ID: '5',
|
|
|
TARO_APP_DEFAULT_END_DISTRICT_ID: '6'
|