# 省市区数据加载说明 ## 问题 省市区下拉框显示为空 ## 原因 1. Vite代理配置需要重启开发服务器才能生效 2. 如果代理加载失败,会使用后备数据 ## 解决步骤 ### 1. 重启开发服务器 ```bash # 停止当前运行的开发服务器 (Ctrl+C) # 然后重新启动 cd admin npm run dev ``` ### 2. 检查控制台日志 打开浏览器开发者工具的Console标签,应该能看到: - "开始加载省市区数据..." - "响应状态: 200" - "加载的数据条数: XX" - "regionOptions 已设置,条数: XX" ### 3. 如果代理失败 如果看到错误信息,会自动使用后备数据,包含: - 四川省(成都市、绵阳市) - 北京市 - 上海市 - 广东省(广州市、深圳市) ## 配置说明 ### Vite代理配置 (admin/vite.config.ts) ```typescript server: { proxy: { '/api-proxy': { target: 'https://admin.zhenyangtang.com.cn', changeOrigin: true, rewrite: (path) => path.replace(/^\/api-proxy/, '') } } } ``` ### 前端请求 (admin/src/views/consumer/prescription/index.vue) ```javascript const response = await fetch('/api-proxy/area/ChinaCitys.json') ``` ## 生产环境配置 生产环境需要在nginx配置代理: ```nginx location /api-proxy/ { proxy_pass https://admin.zhenyangtang.com.cn/; proxy_set_header Host admin.zhenyangtang.com.cn; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } ``` ## 测试 1. 打开创建订单对话框 2. 查看"省市区"下拉框 3. 应该能看到省份列表 4. 选择省份后能看到城市列表 5. 选择城市后能看到区县列表