From 9ea879eea03ee21c8786da2e0df681362a4199e6 Mon Sep 17 00:00:00 2001 From: riku <risaku@163.com> Date: 星期二, 19 十二月 2023 09:16:39 +0800 Subject: [PATCH] 修复CompUserInfo组件两个分支不一致问题 --- src/enum/location.js | 44 ++++++++++++++++++++++++++++++++++++-------- 1 files changed, 36 insertions(+), 8 deletions(-) diff --git a/src/enum/location.js b/src/enum/location.js index ff9fb5a..6a7cdc6 100644 --- a/src/enum/location.js +++ b/src/enum/location.js @@ -1,10 +1,24 @@ -// 琛屾斂鍖哄垝 +/** + * 鑾峰彇琛屾斂鍖哄垝 + * @param {Boolean} allOption 鏄惁鍦ㄥご閮ㄦ坊鍔犫�滃叏閮ㄢ�濋�夐」 + * @param {Number} level 鑾峰彇鐨勫垎绫绘繁搴︼紝鑼冨洿 1 - 4 + * @returns + */ +function enumLocation(allOption = true, level = 4) { + const l = _enumLocation(); + if (!allOption) { + l.shift(); + } + _deleteByLevel(l, level, 1); -function enumLocation() { + return l; +} + +function _enumLocation() { return [ { label: '鍏ㄩ儴', - value: ['0', '鍏ㄩ儴'], + value: [null, '鍏ㄩ儴'], }, { label: '涓婃捣甯�', @@ -127,10 +141,24 @@ }, ]; } -function enumLocationNA() { - const l = enumLocation(); - l.shift(); - return l; + +// 鎸夌収闇�姹傜殑瀹氫綅绮惧害杩斿洖瀵瑰簲鏁版嵁 +function _deleteByLevel(locations, level, step) { + if (step == level) { + locations.forEach((l) => { + if (l.children) { + l.children = undefined; + } + }); + return; + } else { + step++; + locations.forEach((l) => { + if (l.children) { + _deleteByLevel(l.children, level, step); + } + }); + } } -export { enumLocation, enumLocationNA }; +export { enumLocation }; -- Gitblit v1.9.3