feat: 调整项目结构

This commit is contained in:
duanshuwen
2025-12-19 13:10:08 +08:00
parent 6778c57a0e
commit 0d6ffdef83
33 changed files with 219 additions and 102 deletions

View File

@@ -1,18 +1,7 @@
import { createRouter, createWebHistory } from "vue-router";
import { createRouter, createMemoryHistory } from "vue-router";
import Layout from '@renderer/layout/index.vue'
const routes = [
{
path: "/login",
name: "Login",
component: () => import("@renderer/views/login/index.vue"),
},
{
path: "/browser",
name: "Browser",
component: () => import("@renderer/browser/BrowserLayout.vue"),
meta: { requiresAuth: true },
},
{
path: "/",
component: Layout,
@@ -23,53 +12,12 @@ const routes = [
name: "Home",
meta: { requiresAuth: true },
},
{
path: "stock",
name: "Stock",
component: () => import("@renderer/views/stock/index.vue"),
meta: { requiresAuth: true },
},
{
path: "rate",
name: "Rate",
component: () => import("@renderer/views/rate/index.vue"),
meta: { requiresAuth: true },
},
{
path: "order",
name: "Order",
component: () => import("@renderer/views/order/index.vue"),
meta: { requiresAuth: true },
},
{
path: "more",
name: "More",
component: () => import("@renderer/views/more/index.vue"),
meta: { requiresAuth: true },
},
{
path: "setting",
name: "Setting",
component: () => import("@renderer/views/setting/index.vue"),
meta: { requiresAuth: true },
},
{
path: "/dashboard",
name: "Dashboard",
component: () => import("@renderer/views/dashboard/index.vue"),
meta: { requiresAuth: true },
},
]
},
{
path: "/about",
name: "About",
component: () => import("@renderer/views/about/index.vue"),
},
}
];
const router = createRouter({
history: createWebHistory(),
history: createMemoryHistory(),
routes,
scrollBehavior(to: any, from: any, savedPosition: any) {
if (savedPosition) {
@@ -80,24 +28,24 @@ const router = createRouter({
},
});
router.beforeEach((to: any, from: any, next: any) => {
const token = localStorage.getItem("token");
if (to.meta && (to.meta as any).requiresAuth && !token) {
next({ path: "/login" });
return;
}
// router.beforeEach((to: any, from: any, next: any) => {
// const token = localStorage.getItem("token");
// if (to.meta && (to.meta as any).requiresAuth && !token) {
// next({ path: "/login" });
// return;
// }
if (token && to.path === "/login") {
next({ path: "/home" });
return;
}
// if (token && to.path === "/login") {
// next({ path: "/home" });
// return;
// }
if (token && to.path === "/") {
next({ path: "/home" });
return;
}
// if (token && to.path === "/") {
// next({ path: "/home" });
// return;
// }
next();
});
// next();
// });
export default router;

View File

@@ -0,0 +1,18 @@
import type { Plugin } from 'vue'
import logger from './logger'
export const errorHandler: Plugin = (app) => {
app.config.errorHandler = (err, instance, info) => {
logger.error('Vue error:', err, instance, info);
};
window.onerror = (message, source, lineno, colno, error) => {
logger.error('Window error:', message, source, lineno, colno, error);
};
window.onunhandledrejection = (event) => {
logger.error('Unhandled Promise Rejection:', event);
};
};
export default errorHandler;

View File

@@ -0,0 +1,15 @@
import '@renderer/styles/index.css'
import errorHandler from '@utils/errorHandler'
import i18n from '@renderer/i18n'
import HeaderBar from '@renderer/components/HeaderBar/index.vue'
import DragRegion from '@renderer/components/DragRegion/index.vue'
import Dialog from './index.vue'
createApp(Dialog)
.use(i18n)
.use(errorHandler)
.component('HeaderBar', HeaderBar)
.component('DragRegion', DragRegion)
.mount('#app')

View File

@@ -0,0 +1,5 @@
<template></template>
<script setup lang="ts">
</script>

View File

@@ -0,0 +1,16 @@
import '@renderer/styles/index.css'
import errorHandler from '@utils/errorHandler'
import i18n from '@renderer/i18n'
import HeaderBar from '@renderer/components/HeaderBar/index.vue'
import DragRegion from '@renderer/components/DragRegion/index.vue'
import Loading from './index.vue'
createApp(Loading)
.use(i18n)
.use(createPinia())
.use(errorHandler)
.component('HeaderBar', HeaderBar)
.component('DragRegion', DragRegion)
.mount('#app')

View File

@@ -0,0 +1,5 @@
<template></template>
<script setup lang="ts">
</script>

View File

@@ -0,0 +1,16 @@
import '@renderer/styles/index.css'
import errorHandler from '@utils/errorHandler'
import i18n from '@renderer/i18n'
import HeaderBar from '@renderer/components/HeaderBar/index.vue'
import DragRegion from '@renderer/components/DragRegion/index.vue'
import Login from './index.vue'
createApp(Login)
.use(i18n)
.use(createPinia())
.use(errorHandler)
.component('HeaderBar', HeaderBar)
.component('DragRegion', DragRegion)
.mount('#app')

View File

@@ -0,0 +1,15 @@
import '@renderer/styles/index.css'
import errorHandler from '@renderer/utils/errorHandler'
import i18n from '@renderer/i18n'
import HeaderBar from '@renderer/components/HeaderBar/index.vue'
import DragRegion from '@renderer/components/DragRegion/index.vue'
import Setting from './index.vue'
createApp(Setting)
.use(i18n)
.use(errorHandler)
.component('HeaderBar', HeaderBar)
.component('DragRegion', DragRegion)
.mount('#app')