From 2800fa4f32f3900509cb4d6eefaf2bfaf54efdd7 Mon Sep 17 00:00:00 2001
From: 罗广辉 <guanghui.luo@foxmail.com>
Date: Mon, 21 Apr 2025 18:29:09 +0800
Subject: [PATCH] fix: 天气显示

---
 src/router/avue-router.js |  324 +++++++++++++++++++++++++++---------------------------
 1 files changed, 162 insertions(+), 162 deletions(-)

diff --git a/src/router/avue-router.js b/src/router/avue-router.js
index 4797812..e0fa674 100644
--- a/src/router/avue-router.js
+++ b/src/router/avue-router.js
@@ -1,171 +1,171 @@
-import website from '@/config/website';
+import website from '@/config/website'
 
-const modules = import.meta.glob('../**/**/*.vue');
+const modules = import.meta.glob('../**/**/*.vue')
 
 function isURL(s) {
-  return /^http[s]?:\/\/.*/.test(s);
+	return /^http[s]?:\/\/.*/.test(s)
 }
 
 let RouterPlugin = function () {
-  this.$router = null;
-  this.$store = null;
-};
+	this.$router = null
+	this.$store = null
+}
 RouterPlugin.install = function (option = {}) {
-  this.$router = option.router;
-  this.$store = option.store;
-  let i18n = option.i18n.global;
-  this.$router.$avueRouter = {
-    safe: this,
-    // 设置标题
-    setTitle: title => {
-      const defaultTitle = i18n.t('title');
-      title = title ? `${title} | ${defaultTitle}` : defaultTitle;
-      document.title = title;
-    },
-    closeTag: value => {
-      let tag = value || this.$store.getters.tag;
-      if (typeof value === 'string') {
-        tag = this.$store.getters.tagList.find(ele => ele.fullPath === value);
-      }
-      this.$store.commit('DEL_TAG', tag);
-    },
-    generateTitle: (item, props = {}) => {
-      let query = item[props.query || 'query'] || {};
-      let title = query.name || item[props.label || 'label'];
-      let meta = item[props.meta || 'meta'] || {};
-      let key = meta.i18n;
-      if (key) {
-        const hasKey = i18n.te('route.' + key);
-        if (hasKey) return i18n.t('route.' + key);
-      }
-      return title ? title.split(',')[0] : title;
-    },
-    //动态路由
-    formatRoutes: function (aMenu = [], first) {
-      const aRouter = [];
-      const propsDefault = website.menu;
+	this.$router = option.router
+	this.$store = option.store
+	let i18n = option.i18n.global
+	this.$router.$avueRouter = {
+		safe: this,
+		// 设置标题
+		setTitle: title => {
+			const defaultTitle = i18n.t('title')
+			title = title ? `${title} | ${defaultTitle}` : defaultTitle
+			document.title = title
+		},
+		closeTag: value => {
+			let tag = value || this.$store.getters.tag
+			if (typeof value === 'string') {
+				tag = this.$store.getters.tagList.find(ele => ele.fullPath === value)
+			}
+			this.$store.commit('DEL_TAG', tag)
+		},
+		generateTitle: (item, props = {}) => {
+			let query = item[props.query || 'query'] || {}
+			let title = query.name || item[props.label || 'label']
+			let meta = item[props.meta || 'meta'] || {}
+			let key = meta.i18n
+			if (key) {
+				const hasKey = i18n.te('route.' + key)
+				if (hasKey) return i18n.t('route.' + key)
+			}
+			return title ? title.split(',')[0] : title
+		},
+		//动态路由
+		formatRoutes: function (aMenu = [], first) {
+			const aRouter = []
+			const propsDefault = website.menu
 
-      if (aMenu && aMenu.length === 0) return;
-      for (let i = 0; i < aMenu.length; i++) {
-        const oMenu = aMenu[i];
-        let path = oMenu[propsDefault.path],
-          isComponent = true,
-          component = oMenu.component,
-          name = oMenu[propsDefault.label] + ',' + oMenu.id,
-          icon = oMenu[propsDefault.icon],
-          children = oMenu[propsDefault.children],
-          query = oMenu[propsDefault.query],
-          meta = oMenu[propsDefault.meta];
-        if (option.keepAlive) {
-          meta.keepAlive = option.keepAlive;
-        }
-        const isChild = !!(children && children.length !== 0);
-        const oRouter = {
-          path: path,
-          component: (() => {
-            // 判断是否为首路由
-            if (first) {
-              return modules[
-                option.store.getters.isMacOs || !website.setting.menu
-                  ? '../page/index/layout.vue'
-                  : '../page/index/index.vue'
-              ];
-              // 判断是否为多层路由
-            } else if (isChild && !first) {
-              return modules['../page/index/layout.vue'];
-              // 判断是否为最终的页面视图
-            } else {
-              let result = modules[`../${component}.vue`];
-              if (result) result().then(mod => (mod.default.name = path));
-              else {
-                isComponent = false;
-              }
-              return result;
-            }
-          })(),
-          name,
-          icon,
-          meta,
-          query,
-          redirect: (() => {
-            if (!isChild && first) return `${path}`;
-            else return '';
-          })(),
-          // 处理是否为一级路由
-          children: !isChild
-            ? (() => {
-                if (first) {
-                  oMenu[propsDefault.path] = `${path}`;
-                  let result = modules[`../${component}.vue`];
-                  if (result) result().then(mod => (mod.default.name = path));
-                  else {
-                    isComponent = false;
-                  }
-                  return [
-                    {
-                      component: result,
-                      icon: icon,
-                      name: name,
-                      meta: meta,
-                      query: query,
-                      path: '',
-                    },
-                  ];
-                }
-                return [];
-              })()
-            : (() => {
-                return this.formatRoutes(children, false);
-              })(),
-        };
-        if (!isURL(path) && isComponent) aRouter.push(oRouter);
-      }
-      if (first) {
-        aRouter.forEach(ele => this.safe.$router.addRoute(ele));
-      } else {
-        return aRouter;
-      }
-    },
-  };
-};
+			if (aMenu && aMenu.length === 0) return
+			for (let i = 0; i < aMenu.length; i++) {
+				const oMenu = aMenu[i]
+				let path = oMenu[propsDefault.path],
+					isComponent = true,
+					component = oMenu.component,
+					name = oMenu[propsDefault.label] + ',' + oMenu.id,
+					icon = oMenu[propsDefault.icon],
+					children = oMenu[propsDefault.children],
+					query = oMenu[propsDefault.query],
+					meta = oMenu[propsDefault.meta]
+				if (option.keepAlive) {
+					meta.keepAlive = option.keepAlive
+				}
+				const isChild = !!(children && children.length !== 0)
+				const oRouter = {
+					path: path,
+					component: (() => {
+						// 判断是否为首路由
+						if (first) {
+							return modules[
+								option.store.getters.isMacOs || !website.setting.menu
+									? '../page/index/layout.vue'
+									: '../page/index/index.vue'
+							]
+							// 判断是否为多层路由
+						} else if (isChild && !first) {
+							return modules['../page/index/layout.vue']
+							// 判断是否为最终的页面视图
+						} else {
+							let result = modules[`../${component}.vue`]
+							if (result) result().then(mod => (mod.default.name = path))
+							else {
+								isComponent = false
+							}
+							return result
+						}
+					})(),
+					name,
+					icon,
+					meta,
+					query,
+					redirect: (() => {
+						if (!isChild && first) return `${path}`
+						else return ''
+					})(),
+					// 处理是否为一级路由
+					children: !isChild
+						? (() => {
+								if (first) {
+									oMenu[propsDefault.path] = `${path}`
+									let result = modules[`../${component}.vue`]
+									if (result) result().then(mod => (mod.default.name = path))
+									else {
+										isComponent = false
+									}
+									return [
+										{
+											component: result,
+											icon: icon,
+											name: name,
+											meta: meta,
+											query: query,
+											path: '',
+										},
+									]
+								}
+								return []
+						  })()
+						: (() => {
+								return this.formatRoutes(children, false)
+						  })(),
+				}
+				if (!isURL(path) && isComponent) aRouter.push(oRouter)
+			}
+			if (first) {
+				aRouter.forEach(ele => this.safe.$router.addRoute(ele))
+			} else {
+				return aRouter
+			}
+		},
+	}
+}
 export const formatPath = (ele, first) => {
-  const propsDefault = website.menu;
-  const icon = ele[propsDefault.icon];
-  ele[propsDefault.icon] = !icon ? propsDefault.iconDefault : icon;
-  ele.meta = {
-    keepAlive: ele.isOpen === 2,
-  };
-  const iframeComponent = 'components/iframe/main';
-  const iframeSrc = href => {
-    return href.replace(/&/g, '#');
-  };
-  const isChild = !!(ele[propsDefault.children] && ele[propsDefault.children].length !== 0);
-  if (!isChild && first) {
-    ele.component = 'views' + ele[propsDefault.path];
-    if (isURL(ele[propsDefault.href])) {
-      let href = ele[propsDefault.href];
-      ele.component = iframeComponent;
-      ele[propsDefault.query] = {
-        url: iframeSrc(href),
-      };
-    }
-  } else {
-    ele[propsDefault.children] &&
-      ele[propsDefault.children].forEach(child => {
-        child.component = 'views' + child[propsDefault.path];
-        child.meta = {
-          keepAlive: child.isOpen === 2,
-        };
-        if (isURL(child[propsDefault.href])) {
-          let href = child[propsDefault.href];
-          child[propsDefault.path] = ele[propsDefault.path] + '/' + child.code;
-          child.component = iframeComponent;
-          child[propsDefault.query] = {
-            url: iframeSrc(href),
-          };
-        }
-        formatPath(child);
-      });
-  }
-};
-export default RouterPlugin;
+	const propsDefault = website.menu
+	const icon = ele[propsDefault.icon]
+	ele[propsDefault.icon] = !icon ? propsDefault.iconDefault : icon
+	ele.meta = {
+		keepAlive: ele.isOpen === 2,
+	}
+	const iframeComponent = 'components/iframe/main'
+	const iframeSrc = href => {
+		return href.replace(/&/g, '#')
+	}
+	const isChild = !!(ele[propsDefault.children] && ele[propsDefault.children].length !== 0)
+	if (!isChild && first) {
+		ele.component = 'views' + ele[propsDefault.path]
+		if (isURL(ele[propsDefault.href])) {
+			let href = ele[propsDefault.href]
+			ele.component = iframeComponent
+			ele[propsDefault.query] = {
+				url: iframeSrc(href),
+			}
+		}
+	} else {
+		ele[propsDefault.children] &&
+			ele[propsDefault.children].forEach(child => {
+				child.component = 'views' + child[propsDefault.path]
+				child.meta = {
+					keepAlive: child.isOpen === 2,
+				}
+				if (isURL(child[propsDefault.href])) {
+					let href = child[propsDefault.href]
+					child[propsDefault.path] = ele[propsDefault.path] + '/' + child.code
+					child.component = iframeComponent
+					child[propsDefault.query] = {
+						url: iframeSrc(href),
+					}
+				}
+				formatPath(child)
+			})
+	}
+}
+export default RouterPlugin

--
Gitblit v1.9.3