fix(collectionSettings): 修复地址显示异常并优化地址数据处理逻辑
修复地址显示中可能出现的'NaN'问题,并优化地址数据的拼接和处理逻辑,确保地址显示正确
Showing
1 changed file
with
21 additions
and
8 deletions
| 1 | <!-- | 1 | <!-- |
| 2 | * @Date: 2022-09-19 14:11:06 | 2 | * @Date: 2022-09-19 14:11:06 |
| 3 | * @LastEditors: hookehuyr hookehuyr@gmail.com | 3 | * @LastEditors: hookehuyr hookehuyr@gmail.com |
| 4 | - * @LastEditTime: 2025-08-12 18:30:09 | 4 | + * @LastEditTime: 2025-08-13 09:50:04 |
| 5 | * @FilePath: /jgdl/src/pages/collectionSettings/index.vue | 5 | * @FilePath: /jgdl/src/pages/collectionSettings/index.vue |
| 6 | * @Description: 收款设置 | 6 | * @Description: 收款设置 |
| 7 | --> | 7 | --> |
| ... | @@ -199,8 +199,8 @@ | ... | @@ -199,8 +199,8 @@ |
| 199 | class="address-selector" | 199 | class="address-selector" |
| 200 | @click="showAddressSelector = true" | 200 | @click="showAddressSelector = true" |
| 201 | > | 201 | > |
| 202 | - <text class="address-text" :class="{ 'address-selected': addressData.full_address }"> | 202 | + <text class="address-text" :class="{ 'address-selected': addressData.full_address && addressData.full_address !== 'NaN' }"> |
| 203 | - {{ addressData.full_address || '请选择省市县并填写详细地址' }} | 203 | + {{ (addressData.full_address && addressData.full_address !== 'NaN' && addressData.full_address.trim()) || '请选择省市县并填写详细地址' }} |
| 204 | </text> | 204 | </text> |
| 205 | <RectRight color="#999" size="10" /> | 205 | <RectRight color="#999" size="10" /> |
| 206 | </view> | 206 | </view> |
| ... | @@ -691,15 +691,28 @@ const openIdentityModal = () => { | ... | @@ -691,15 +691,28 @@ const openIdentityModal = () => { |
| 691 | * 初始化地址选择器数据 | 691 | * 初始化地址选择器数据 |
| 692 | */ | 692 | */ |
| 693 | const initAddressData = () => { | 693 | const initAddressData = () => { |
| 694 | + const province = tempIdentityInfo.value.province || '' | ||
| 695 | + const city = tempIdentityInfo.value.city || '' | ||
| 696 | + const county = tempIdentityInfo.value.county || '' | ||
| 697 | + const detailAddress = tempIdentityInfo.value.idcard_address || '' | ||
| 698 | + | ||
| 699 | + // 安全地拼接完整地址,只有在有有效数据时才拼接 | ||
| 700 | + let fullAddress = '' | ||
| 701 | + if (province || city || county || detailAddress) { | ||
| 702 | + const addressParts = [province, city, county].filter(part => part && part.trim()) | ||
| 703 | + const areaText = addressParts.join('') | ||
| 704 | + fullAddress = detailAddress ? `${areaText} ${detailAddress}`.trim() : areaText | ||
| 705 | + } | ||
| 706 | + | ||
| 694 | addressData.value = { | 707 | addressData.value = { |
| 695 | - province: tempIdentityInfo.value.province || '', | 708 | + province, |
| 696 | - city: tempIdentityInfo.value.city || '', | 709 | + city, |
| 697 | - county: tempIdentityInfo.value.county || '', | 710 | + county, |
| 698 | province_code: tempIdentityInfo.value.idcard_province || '', | 711 | province_code: tempIdentityInfo.value.idcard_province || '', |
| 699 | city_code: tempIdentityInfo.value.idcard_city || '', | 712 | city_code: tempIdentityInfo.value.idcard_city || '', |
| 700 | county_code: tempIdentityInfo.value.idcard_district || '', | 713 | county_code: tempIdentityInfo.value.idcard_district || '', |
| 701 | - detail_address: tempIdentityInfo.value.idcard_address || '', | 714 | + detail_address: detailAddress, |
| 702 | - full_address: (tempIdentityInfo.value.province + tempIdentityInfo.value.city + tempIdentityInfo.value.county + tempIdentityInfo.value.idcard_address) || '' | 715 | + full_address: fullAddress |
| 703 | } | 716 | } |
| 704 | }; | 717 | }; |
| 705 | 718 | ... | ... |
-
Please register or login to post a comment