import { createApp } from 'vue' import { createPinia } from 'pinia' import { createRouter, createWebHistory, RouteRecordRaw } from 'vue-router' import App from '@/App.vue' import naive from '@/assets/native-plugin' import Icon from '@/components/icon.vue' import 'virtual:svg-icons-register' const store = createPinia() // 动态路由 const routes = Object.values(import.meta.glob('./pages/*/route.ts', { eager: true, import: 'default' })) as unknown as RouteRecordRaw[] routes.push({ path: '/:path(.*)', redirect: '/' }) const app = createApp(App) const router = createRouter({ history: createWebHistory(), routes }) app.component('Icon', Icon) app.use(store) .use(naive) .use(router) .mount('#app')