From f9398ce73a1bccff71218117ae963ea2ecd6809b Mon Sep 17 00:00:00 2001 From: Tevin <tingquanren@163.com> Date: Thu, 24 Mar 2022 12:16:04 +0800 Subject: [PATCH] 优化跨页面数据传递 --- forms/chinaArea/ChinaLocations.weapp.js | 31 +++++++++++++++++++------------ 1 files changed, 19 insertions(+), 12 deletions(-) diff --git a/forms/chinaArea/ChinaLocations.weapp.js b/forms/chinaArea/ChinaLocations.weapp.js index 72bf0ce..c9fa3c0 100644 --- a/forms/chinaArea/ChinaLocations.weapp.js +++ b/forms/chinaArea/ChinaLocations.weapp.js @@ -74,12 +74,17 @@ let address = ''; let tempLocationData = ChinaLocationData; regions.forEach((code) => { - if (typeof tempLocationData[code].name === 'string') { - address += tempLocationData[code].name; + if (!code || !tempLocationData[code]) { + 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; }, @@ -94,15 +99,17 @@ let address = []; let tempLocationData = ChinaLocationData; regions.forEach((code) => { - if (!tempLocationData[code]) { - return; - } - if (typeof tempLocationData[code].name === 'string') { - address.push(tempLocationData[code].name); + if (!code || !tempLocationData[code]) { + 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; @@ -128,7 +135,7 @@ if (provinceChildren[cityCode].name === regions[1]) { codes[1] = cityCode; // 区 - const areaChildren = provinceChildren[cityCode].children; + const areaChildren = provinceChildren[cityCode].children || []; for (let areaCode in areaChildren) { if (areaChildren.hasOwnProperty(areaCode)) { if (areaChildren[areaCode] === regions[2]) { -- Gitblit v1.9.1