From c9571c465c756deedbfe424b5eab2d7591119f77 Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期五, 19 五月 2023 17:04:45 +0800
Subject: [PATCH] 新增选项组件,修改组合式函数fetchData

---
 src/enum/location.js |   42 +++++++++++++++++++++++++++++++++++-------
 1 files changed, 35 insertions(+), 7 deletions(-)

diff --git a/src/enum/location.js b/src/enum/location.js
index ff9fb5a..0d79acb 100644
--- a/src/enum/location.js
+++ b/src/enum/location.js
@@ -1,6 +1,20 @@
-// 琛屾斂鍖哄垝
+/**
+ * 鑾峰彇琛屾斂鍖哄垝
+ * @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: '鍏ㄩ儴',
@@ -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