From 58cec38eef64d74f77fd2688911dff380f1b2a24 Mon Sep 17 00:00:00 2001
From: Tevin <tingquanren@163.com>
Date: Mon, 21 Feb 2022 16:25:14 +0800
Subject: [PATCH] 优化地址三级联动组件,允许只有两级的地址,可以被选中

---
 forms/chinaArea/ChinaLocations.weapp.js |   28 ++++++++++++++++------------
 1 files changed, 16 insertions(+), 12 deletions(-)

diff --git a/forms/chinaArea/ChinaLocations.weapp.js b/forms/chinaArea/ChinaLocations.weapp.js
index 974ac5f..c9fa3c0 100644
--- a/forms/chinaArea/ChinaLocations.weapp.js
+++ b/forms/chinaArea/ChinaLocations.weapp.js
@@ -75,14 +75,16 @@
         let tempLocationData = ChinaLocationData;
         regions.forEach((code) => {
             if (!code || !tempLocationData[code]) {
-                return;
-            }
-            if (typeof tempLocationData[code].name === 'string') {
-                address += tempLocationData[code].name;
+                address.push('');
+                tempLocationData = [];
             } else {
-                address += tempLocationData[code];
+                if (typeof tempLocationData[code].name === 'string') {
+                    address += tempLocationData[code].name;
+                } else {
+                    address += tempLocationData[code];
+                }
+                tempLocationData = tempLocationData[code].children;
             }
-            tempLocationData = tempLocationData[code].children;
         });
         return address;
     },
@@ -98,14 +100,16 @@
         let tempLocationData = ChinaLocationData;
         regions.forEach((code) => {
             if (!code || !tempLocationData[code]) {
-                return;
-            }
-            if (typeof tempLocationData[code].name === 'string') {
-                address.push(tempLocationData[code].name);
+                address.push('');
+                tempLocationData = [];
             } else {
-                address.push(tempLocationData[code]);
+                if (typeof tempLocationData[code].name === 'string') {
+                    address.push(tempLocationData[code].name);
+                } else {
+                    address.push(tempLocationData[code]);
+                }
+                tempLocationData = tempLocationData[code].children;
             }
-            tempLocationData = tempLocationData[code].children;
         });
         return address;
 

--
Gitblit v1.9.1