From 3b03f87a02458f719e2eb4bf112a13441b427d14 Mon Sep 17 00:00:00 2001 From: ‘chensiAb’ <‘chenchenco03@163.com’> Date: Tue, 25 Mar 2025 13:54:34 +0800 Subject: [PATCH] Merge branch 'master' of ssh://dev.zhiheiot.com:29418/mob-components --- forms/chinaArea/CChinaArea.vue | 19 +++++++++++++------ 1 files changed, 13 insertions(+), 6 deletions(-) diff --git a/forms/chinaArea/CChinaArea.vue b/forms/chinaArea/CChinaArea.vue index 91f4247..faadcf5 100644 --- a/forms/chinaArea/CChinaArea.vue +++ b/forms/chinaArea/CChinaArea.vue @@ -1,5 +1,8 @@ /** * CChinaArea - 表单项,中国地址三级联动 + * 中国地区选择器组件,用于在表单中选择省市区地址 + * 内置完整的中国行政区划数据,支持多级联动选择 + * 支持自动通过地理定位获取省市区 * @author Tevin */ @@ -102,7 +105,7 @@ // 省 if (codes[0]) { const proviceIndex = locationTree.findIndex( - provice => provice.value === codes[0] + provice => provice.value === codes[0], ); if (proviceIndex >= 0) { range[1] = locationTree[proviceIndex].children; @@ -112,7 +115,7 @@ // 市 if (codes[1]) { const cityIndex = range[1].findIndex( - city => city.value === codes[1] + city => city.value === codes[1], ); if (cityIndex >= 0) { range[2] = range[1][cityIndex].children; @@ -121,7 +124,7 @@ // 区 if (codes[2]) { const distIndex = range[2].findIndex( - dist => dist.value === codes[2] + dist => dist.value === codes[2], ); if (distIndex >= 0) { current[2] = distIndex; @@ -131,7 +134,7 @@ range[3] = range[2][current[2]].children || []; const streetIndex = range[3].findIndex( - street => street.value === codes[3] + street => street.value === codes[3], ); if (streetIndex >= 0) { current[3] = streetIndex; @@ -144,7 +147,9 @@ }); } this.range = range; - this.current = current; + setTimeout(() => { + this.current = current; + }, 100); }); }, updateColumns(roll) { @@ -226,8 +231,10 @@ address.province.replace(/省|市|自治区|特别行政区/g, ''), address.city, address.district, - address.street, ]; + if (this.level === 4) { + regions.push(address.street); + } $locations.getRegionCodes(regions, codes => { if (codes && codes.length > 0) { $locations.getRegionNames(codes, names => { -- Gitblit v1.9.1