Files
XuJiacheng 9a387f3eec feat: 初始化项目结构并添加基础配置
添加前后端基础项目结构,包括.gitignore、package.json等配置文件
实现前端基础功能模块,包括路由、状态管理、API请求封装等
添加前端UI组件库和样式体系
配置开发环境Mock系统和构建工具链
2026-03-18 14:03:35 +08:00

40 lines
1.2 KiB
TypeScript

import { App } from 'vue'
// 加载雪碧图
import '@/icon'
// 加载全局样式样式
import './styles/vab.scss'
import { createHead } from '@vueuse/head'
// 加载Icon
import VabIcon from 'vab-icons'
import 'vab-icons/lib/vab-icons.css'
import * as ElementPlusIconsVue from '@element-plus/icons-vue'
const name = process['env']['VUE_' + 'APP_' + 'GITHUB_' + 'USER_' + 'NAME']
const noTest = name !== 'test'
const noEmpty = name !== 'undefined'
const dev = process['env']['NODE_' + 'ENV'] === 'dev' + 'elop' + 'ment'
export function setupVab(app: App<Element>) {
if ((noTest && noEmpty && !dev && VabIcon) || (dev && VabIcon)) {
app.use(createHead())
app.component('VabIcon', VabIcon)
for (const [key, component] of Object.entries(ElementPlusIconsVue)) {
app.component(key, component)
}
// 加载背景
const Themes = require.context('./styles/background', false, /\.scss$/)
Themes.keys().map(Themes)
// 加载插件
const Plugins = require.context('./plugins', true, /\.ts$/)
Plugins.keys().forEach((key) => {
app.use(Plugins(key).default)
})
}
}