拎壶冲 6 місяців тому
батько
коміт
05a271c25f
3 змінених файлів з 83 додано та 38 видалено
  1. 7 1
      src/router/index.js
  2. 45 0
      src/views/dashboard.vue
  3. 31 37
      src/views/index.vue

+ 7 - 1
src/router/index.js

@@ -63,10 +63,16 @@ export const constantRoutes = [
         redirect: '/index',
         children: [
             {
+                path: '/dashboard',
+                component: () => import('@/views/dashboard'),
+                name: 'dashboard',
+                meta: {title: '业务运行风险', icon: 'dashboard', affix: true}
+            },
+            {
                 path: '/index',
                 component: () => import('@/views/index'),
                 name: 'Index',
-                meta: {title: '业务运行风险', icon: 'dashboard', affix: true}
+                hidden:true
             }
         ]
     },

+ 45 - 0
src/views/dashboard.vue

@@ -0,0 +1,45 @@
+<template>
+  <div class="home-container">
+    <title-nav/>
+    <div class="home-page" v-if="refreshTime">
+      <!--    <top-scroll-bar />-->
+      <div class="content-top">
+        <div class="column-row">
+          <access-error :refreshTime="refreshTime" />
+          <alarm-ranking :refreshTime="refreshTime" />
+        </div>
+        <app-health :refreshTime="refreshTime"/>
+        <div class="column-row">
+          <top-scroll-bar :refreshTime="refreshTime"/>
+          <run-result :refreshTime="refreshTime"/>
+        </div>
+      </div>
+      <div class="content-chart">
+        <health-tendency :refreshTime="refreshTime"/>
+        <run-tendency :refreshTime="refreshTime"/>
+      </div>
+    </div>
+  </div>
+</template>
+<script setup>
+import topScrollBar from "./index/widget/topScrollBar.vue"
+import titleNav from "./index/widget/titleNav.vue"
+import runResult from "./index/widget/runResult.vue"
+import appHealth from "./index/widget/appHealth.vue"
+import accessError from "./index/widget/accessError.vue"
+import alarmRanking from "./index/widget/alarmRanking.vue"
+import runTendency from "./index/widget/runTendency.vue"
+import healthTendency from "./index/widget/healthTendency.vue"
+import {onMounted} from "vue";
+
+const {proxy} = getCurrentInstance()
+const refreshTime = ref(null)
+onMounted(()=>{
+  proxy.getConfigKey("index.refresh.time").then(response => {
+    refreshTime.value = Number(response.msg) * 60000
+  });
+})
+</script>
+<style lang="scss">
+@import "./index/css/style.scss";
+</style>

+ 31 - 37
src/views/index.vue

@@ -1,45 +1,39 @@
 <template>
-  <div class="home-container">
-    <title-nav/>
-    <div class="home-page" v-if="refreshTime">
-      <!--    <top-scroll-bar />-->
-      <div class="content-top">
-        <div class="column-row">
-          <access-error :refreshTime="refreshTime" />
-          <alarm-ranking :refreshTime="refreshTime" />
-        </div>
-        <app-health :refreshTime="refreshTime"/>
-        <div class="column-row">
-          <top-scroll-bar :refreshTime="refreshTime"/>
-          <run-result :refreshTime="refreshTime"/>
-        </div>
-      </div>
-      <div class="content-chart">
-        <health-tendency :refreshTime="refreshTime"/>
-        <run-tendency :refreshTime="refreshTime"/>
-      </div>
-    </div>
+  <div class="content-row">
+    loading...
   </div>
 </template>
-<script setup>
-import topScrollBar from "./index/widget/topScrollBar.vue"
-import titleNav from "./index/widget/titleNav.vue"
-import runResult from "./index/widget/runResult.vue"
-import appHealth from "./index/widget/appHealth.vue"
-import accessError from "./index/widget/accessError.vue"
-import alarmRanking from "./index/widget/alarmRanking.vue"
-import runTendency from "./index/widget/runTendency.vue"
-import healthTendency from "./index/widget/healthTendency.vue"
-import {onMounted} from "vue";
+<script setup lang="ts">
+import {onBeforeMount} from "vue";
+import {useRouter} from 'vue-router';
 
-const {proxy} = getCurrentInstance()
-const refreshTime = ref(null)
-onMounted(()=>{
-  proxy.getConfigKey("index.refresh.time").then(response => {
-    refreshTime.value = Number(response.msg) * 60000
+const router = useRouter();
+
+const urlParams = () => {
+  const dynamicUrl = window.location.href;
+  const dynamicUrlObj = new URL(dynamicUrl);
+  const dynamicParams = {};
+  dynamicUrlObj.searchParams.forEach((value, key) => {
+    dynamicParams[key] = value.replace(/^"|"$/g, '');
   });
+  return dynamicParams;
+}
+
+onBeforeMount(() => {
+  const {path} = urlParams();
+  if (path) {
+    router.push({path});
+  }
 })
 </script>
-<style lang="scss">
-@import "./index/css/style.scss";
+<style scoped lang="scss">
+.content-row {
+  display: flex;
+  align-items: center;
+  justify-content: center;
+  padding-top: 20px;
+  color: #666;
+  height: 100vh;
+  background: rgba($color: #f5f5f5, $alpha: 0.5);
+}
 </style>