diff --git a/core.128338 b/core.128338 deleted file mode 100644 index 0a12bf99904c305c207a862e467c49ae516b17b8..0000000000000000000000000000000000000000 Binary files a/core.128338 and /dev/null differ diff --git a/package.json b/package.json index f4248c658e8209114495509799e08017501de708..f504e05ff06a504aea012fee80674678576e8643 100644 --- a/package.json +++ b/package.json @@ -13,11 +13,16 @@ "echarts": "^5.4.2", "guess": "^1.0.2", "html2canvas": "^1.4.1", - "vue": "^3.2.37" + "vue": "^3.2.37", + "vue-router": "^4.2.5", + "vuex": "^4.1.0" }, "devDependencies": { - "@vitejs/plugin-vue": "^3.0.1", - "vite": "^3.0.1" + "@types/node": "^18.19.6", + "@vitejs/plugin-vue": "^4.0.0", + "less": "^4.2.0", + "prettier": "^3.2.2", + "vite": "^4.0.0" }, "license": "MIT" } diff --git a/src/App.vue b/src/App.vue index 3ec8e227932e3a62735fc97a3876acfd12f3694a..a47c6fec005556bfd9d02bac25d055b1be024d79 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,20 +1,12 @@ - + diff --git a/src/layout/index.vue b/src/layout/index.vue new file mode 100644 index 0000000000000000000000000000000000000000..4f586bbefc28064b0c4351bb63bb652c9a4a7b3a --- /dev/null +++ b/src/layout/index.vue @@ -0,0 +1,145 @@ + + + + + diff --git a/src/main.js b/src/main.js index 5e3dd15a79c2d4baabbb349e71492b2c3774b44d..9f9498ce2179ad8bd9e6bcb8946fa67a69dc7c0c 100644 --- a/src/main.js +++ b/src/main.js @@ -3,5 +3,9 @@ import App from './App.vue' import Antd from 'ant-design-vue'; import 'ant-design-vue/dist/antd.css'; import './assets/main.css' +import Router from "./router/index.js"; -createApp(App).use(Antd).mount('#app') +createApp(App) +.use(Antd) +.use(Router) +.mount('#app') diff --git a/src/router/index.js b/src/router/index.js new file mode 100644 index 0000000000000000000000000000000000000000..5b0e4cdc2929eafe35de932766325b163659b9ee --- /dev/null +++ b/src/router/index.js @@ -0,0 +1,32 @@ +import * as VueRouter from "vue-router"; + + +// import.meta.glob() 直接引入所有的模块 Vite 独有的功能 +const modules = import.meta.glob('./modules/*.js', { eager: true }); + +const routeModuleList=[] + +console.log('modules',modules) +// 加入到路由集合中 +Object.keys(modules).forEach((key) => { + + const mod = modules[key].default || {}; + const modList = Array.isArray(mod) ? [...mod] : [mod]; + console.log('modList',modList) + routeModuleList.push(...modList); +}); + + + +console.log('routeModuleList',routeModuleList) +const router = VueRouter.createRouter({ + // 4. 内部提供了 history 模式的实现。为了简单起见,我们在这里使用 hash 模式。 + history: VueRouter.createWebHashHistory(), + routes: routeModuleList, +}); +// 路由权限 beforeResolve + +router.beforeResolve(async (to, from, next) => { + next() +}); +export default router; diff --git a/src/router/modules/layout.js b/src/router/modules/layout.js new file mode 100644 index 0000000000000000000000000000000000000000..64bd033e916feb0648f536965dc3c81d08e89fbd --- /dev/null +++ b/src/router/modules/layout.js @@ -0,0 +1,27 @@ +// 基础路由 +// @ts-ignore +import LAYOUT from '@/layout/index.vue' + +export default { + path: '/', + name: 'Layout', + component: LAYOUT, + redirect: '/SearchGrade', + meta: { + orderNo: 1, + icon: 'ion:grid-outline', + title: 'vue3 平台', + }, + children: [ + { + path: 'SearchGrade', + name: 'SearchGrade', + component: () => import('@/components/SearchGrade.vue'), + meta: { + // affix: true, + icon: 'ion:grid-outline', + title:'csdn查分', + }, + } + ], +}; diff --git a/vite.config.js b/vite.config.js index e51805f8ba9b9ff950b81a5e9af600875c1462b9..b802c5b8e01fe107c88dd6525ef3e03e163b78aa 100644 --- a/vite.config.js +++ b/vite.config.js @@ -1,4 +1,5 @@ import { defineConfig } from 'vite' +import { resolve } from "path"; import vue from '@vitejs/plugin-vue' // https://vitejs.dev/config/ @@ -22,5 +23,10 @@ export default defineConfig({ }, }, }, + resolve: { + alias: { + "@": resolve(__dirname, "src"), + }, + }, plugins: [vue()] })