This commit is contained in:
dongruihua
2022-11-21 17:13:58 +08:00
9 changed files with 444 additions and 252 deletions

View File

@@ -4,9 +4,8 @@
"private": true, "private": true,
"scripts": { "scripts": {
"dev": "vite", "dev": "vite",
"serve": "vue-cli-service serve", "serve": "vite build && vite preview",
"build": "vue-cli-service build", "build": "vite build"
"lint": "vue-cli-service lint"
}, },
"dependencies": { "dependencies": {
"axios": "^1.1.3", "axios": "^1.1.3",
@@ -36,7 +35,8 @@
"vite": "^3.2.3", "vite": "^3.2.3",
"vite-plugin-imp": "^2.3.1", "vite-plugin-imp": "^2.3.1",
"vite-plugin-mock": "^2.9.6", "vite-plugin-mock": "^2.9.6",
"vite-plugin-style-import": "^2.0.0" "vite-plugin-style-import": "^2.0.0",
"vite-plugin-top-level-await": "^1.2.1"
}, },
"eslintConfig": { "eslintConfig": {
"root": true, "root": true,

635
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +1,5 @@
import './mock/index'; import './mock/index'
import { createApp } from 'vue' import {createApp} from 'vue'
import App from './App.vue' import App from './App.vue'
import router from './router' import router from './router'
import store from './store' import store from './store'
@@ -7,8 +7,9 @@ import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css' import 'element-plus/dist/index.css'
import zhCn from 'element-plus/es/locale/lang/zh-cn' import zhCn from 'element-plus/es/locale/lang/zh-cn'
import "@/assets/scss/common.scss" import "@/assets/scss/common.scss"
const app = createApp(App) const app = createApp(App)
app.use(store).use(router).mount('#app') app.use(store).use(router).mount('#app')
app.use(ElementPlus, { app.use(ElementPlus, {
locale: zhCn, locale: zhCn,
}) })

View File

@@ -1,12 +1,12 @@
import {createProdMockServer} from 'vite-plugin-mock/es/createProdMockServer' import {createProdMockServer} from 'vite-plugin-mock/es/createProdMockServer'
const context = import.meta.glob("./mocks/*.js", {eager: true}) const context = import.meta.glob("./mocks/*.js", {eager: true})
const API = await import("../api/api") const API = import.meta.glob("../api/api.js", {eager: true})
const module = API['../api/api.js']
const array = Object.keys(context).map(path => const array = Object.keys(context).map(path =>
Object.keys(context[path].default).map(url => ({ Object.keys(context[path].default).map(url => ({
url: API[url].split(' ')[0], url: module[url].split(' ')[0],
method: API[url].split(' ').length > 1 ? API[url].split(' ')[1] : 'get', method: module[url].split(' ').length > 1 ? module[url].split(' ')[1] : 'get',
response: context[path].default[url] response: context[path].default[url]
}))).reduce((r, m) => [...r, ...m]) }))).reduce((r, m) => [...r, ...m]);
console.log(array) createProdMockServer([...array])
createProdMockServer([...array])

View File

@@ -1,11 +1,11 @@
const routes = []; const routes = [];
const context =import.meta.glob("../views/*/*.vue") const context =import.meta.glob("../views/*/*.vue", {eager: true})
Object.keys(context).forEach(path => { Object.keys(context).forEach(path => {
const componentName = path.replace(/.*\/([^\\.\\/]*)\.vue$/, '$1'); const componentName = path.replace(/.*\/([^\\.\\/]*)\.vue$/, '$1');
routes.push({ routes.push({
path: `/${componentName.toLowerCase()}`, path: `/${componentName.toLowerCase()}`,
name: componentName, name: componentName,
component: () => import(path/* @vite-ignore */), component: context[path].default,
meta: { meta: {
isLink: true isLink: true
} }

View File

@@ -151,10 +151,10 @@ import pdf from '@/assets/image/file/pdf.png'
import zip from '@/assets/image/file/zip.png' import zip from '@/assets/image/file/zip.png'
import md from '@/assets/image/file/md.png' import md from '@/assets/image/file/md.png'
import excel from '@/assets/image/file/excel.png' import excel from '@/assets/image/file/excel.png'
import medal1 from '@/assets/image/file/medal1.png' import medal1 from '@/assets/image/medal/medal1.png'
import medal2 from '@/assets/image/file/medal2.png' import medal2 from '@/assets/image/medal/medal2.png'
import medal3 from '@/assets/image/file/medal3.png' import medal3 from '@/assets/image/medal/medal3.png'
import img from '@/assets/image/file/img.png' import img from '@/assets/image/uploadimg.png'
import {request, useRequest} from "@/api/request"; import {request, useRequest} from "@/api/request";
import {STU_OFFCOURSE_DETAIL} from "@/api/api"; import {STU_OFFCOURSE_DETAIL} from "@/api/api";

View File

@@ -143,7 +143,7 @@
<script> <script>
import {reactive, toRefs} from "vue"; import {reactive, toRefs} from "vue";
import img from '@/assets/image/file/img.png' import img from '@/assets/image/uploadimg.png'
import {request, useRequest} from "@/api/request"; import {request, useRequest} from "@/api/request";
import {TASK_BROADCAST_COMMIT, TASK_BROADCAST_DETAIL, TASK_BROADCAST_SIGN} from "@/api/api"; import {TASK_BROADCAST_COMMIT, TASK_BROADCAST_DETAIL, TASK_BROADCAST_SIGN} from "@/api/api";

View File

@@ -309,10 +309,10 @@ import ppt from '@/assets/image/file/ppt.png'
import pdf from '@/assets/image/file/pdf.png' import pdf from '@/assets/image/file/pdf.png'
import zip from '@/assets/image/file/zip.png' import zip from '@/assets/image/file/zip.png'
import md from '@/assets/image/file/md.png' import md from '@/assets/image/file/md.png'
import medal1 from '@/assets/image/file/medal1.png' import medal1 from '@/assets/image/medal/medal1.png'
import medal2 from '@/assets/image/file/medal2.png' import medal2 from '@/assets/image/medal/medal2.png'
import medal3 from '@/assets/image/file/medal3.png' import medal3 from '@/assets/image/medal/medal3.png'
import img from '@/assets/image/file/img.png' import img from '@/assets/image/uploadimg.png'
import {useRequest} from "@/api/request"; import {useRequest} from "@/api/request";
import {ROUTER_PROCESS} from "@/api/api"; import {ROUTER_PROCESS} from "@/api/api";

View File

@@ -2,6 +2,7 @@ import {defineConfig} from 'vite'
import vue from '@vitejs/plugin-vue' import vue from '@vitejs/plugin-vue'
import legacy from '@vitejs/plugin-legacy' import legacy from '@vitejs/plugin-legacy'
import {viteMockServe} from 'vite-plugin-mock' import {viteMockServe} from 'vite-plugin-mock'
import topLevelAwait from "vite-plugin-top-level-await";
const path = require('path') const path = require('path')
@@ -9,14 +10,15 @@ export default defineConfig(({command}) =>
({ ({
plugins: [ plugins: [
vue(), vue(),
legacy({ // legacy({
targets: ['chrome 52', 'defaults', 'not IE 11'] // targets: ['chrome 64', 'defaults', 'not IE 11']
// }),
topLevelAwait({
promiseExportName: '__tla',
promiseImportName: i => `__tla_${i}`
}), }),
viteMockServe({ viteMockServe({
mockPath: './src/mock/mocks', mockPath: './src/mock/mocks',
injectCode: `
console.log(111111111)
`,
}) })
], ],
resolve: { resolve: {