From 0ba9e571a77dab21c749461c298af1bca69b6b98 Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期日, 07 四月 2024 16:52:10 +0800
Subject: [PATCH] 路由整合代码

---
 Source/ProjectWeb/src/router/avue-router.js |   35 ++++++++++++++++++++++++-----------
 1 files changed, 24 insertions(+), 11 deletions(-)

diff --git a/Source/ProjectWeb/src/router/avue-router.js b/Source/ProjectWeb/src/router/avue-router.js
index a12448f..933f2a5 100644
--- a/Source/ProjectWeb/src/router/avue-router.js
+++ b/Source/ProjectWeb/src/router/avue-router.js
@@ -97,7 +97,8 @@
       // 璁剧疆 props榛樿鍊� 浣滅敤灏辨槸灏嗗瓧娈佃缃垚閰嶇疆鐨�
       const propsDefault = {
         label: propsConfig.label || 'name',
-        path: propsConfig.path || 'path',
+        path: 'code',
+        pathValue:propsConfig.path || 'path',
         icon: propsConfig.icon || 'icon',
         children: propsConfig.children || 'children',
         meta: propsConfig.meta || 'meta',
@@ -110,15 +111,27 @@
         const oMenu = aMenu[i];
         // 杩欎竴鍧楃殑璧嬪�� 涔熷氨鏄彇鍒拌繑鍥炵殑鍊�
         let path = (() => {
-            if (first) {
-              // 灏� '/index' 鏇挎崲涓� ''
-              return oMenu[propsDefault.path].replace('/index', '')
-            } else {
-              return oMenu[propsDefault.path]
-            }
-          })(),
-          //鐗规畩澶勭悊缁勪欢 鎵ц瀹岃繖涓� component 涔熷氨鏄簿纭埌鍏蜂綋鐨勬枃浠朵簡  views鏂囦欢澶逛笅闈㈠氨鏄叿浣撶殑椤甸潰浠g爜
-          component = 'views' + path,
+          if (first) {
+            // 灏� '/index' 鏇挎崲涓� ''
+            return oMenu[propsDefault.pathValue].replace('/index', '')
+          } else {
+            return oMenu[propsDefault.pathValue]
+          }
+        })();
+        let code = (() => {
+            return oMenu[propsDefault.path]
+        })();
+        // 灏嗗瓧绗︿覆鍒嗗壊鎴愭暟缁勶紝浠�'?'浣滀负鍒嗛殧绗�
+        let parts = path.split("?");
+        // 濡傛灉鏁扮粍鐨勯暱搴﹀ぇ浜�1锛岃〃绀烘湁'?'锛屽垯鍙栫涓�涓厓绱犵殑绗竴涓儴鍒嗭紝鍚﹀垯鐩存帴鍙栨暣涓瓧绗︿覆
+        let bsValue = parts.length > 1 ? parts[0].split("=")[1] : path.split("=")[1];
+
+        if (bsValue ===''  || bsValue === undefined || bsValue === null ) {
+          bsValue = "UI";
+        }
+
+        //鐗规畩澶勭悊缁勪欢 鎵ц瀹岃繖涓� component 涔熷氨鏄簿纭埌鍏蜂綋鐨勬枃浠朵簡  views鏂囦欢澶逛笅闈㈠氨鏄叿浣撶殑椤甸潰浠g爜
+        let component = bsValue === 'UI' ? 'views/base/UIContentViewer' : `views/custom-ui/${bsValue}`,
           name = oMenu[propsDefault.label],
           icon = oMenu[propsDefault.icon],
           children = oMenu[propsDefault.children],
@@ -134,7 +147,7 @@
         //鏄惁鏈夊瓙璺敱
         const isChild = children.length !== 0;
         const oRouter = {
-          path: path,
+          path: code,
           component(resolve) {
             // 鍒ゆ柇鏄惁涓洪璺敱
             if (first) {

--
Gitblit v1.9.3