Files
smart_grid_iot/client/vite.config.ts
T
andyesfly 3d7eb12103 feat: 初始化智能物联网设备管理系统前后端基础项目
完成项目整体结构搭建,包含:
1. 前端Vue3+TS+Vite+Antd项目基础配置与核心依赖
2. 后端MidwayJS+TypeORM+JWT权限认证框架
3. 完整的用户、角色、权限、日志数据库表结构
4. 核心业务模块API与基础服务实现
5. 全局样式、路由、状态管理配置
2026-05-28 16:23:15 +08:00

79 lines
1.9 KiB
TypeScript

import { defineConfig } from "vite";
import vue from "@vitejs/plugin-vue";
import path from "path";
export default defineConfig({
plugins: [vue()],
resolve: {
alias: {
"@": path.resolve(__dirname, "./src")
}
},
css: {
preprocessorOptions: {
less: {
javascriptEnabled: true,
modifyVars: {
// 主色调
"primary-color": "#1890ff",
"link-color": "#1890ff",
"success-color": "#52c41a",
"warning-color": "#faad14",
"error-color": "#ff4d4f",
"info-color": "#1890ff",
// 字体
"font-size-base": "14px",
"font-family": `-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif`,
// 圆角
"border-radius-base": "6px",
// 布局
"layout-header-height": "64px",
"layout-sider-background": "#001529",
"menu-dark-inline-submenu-bg": "#000c17",
"menu-dark-selected-item-icon-color": "#1890ff",
"menu-dark-selected-item-text-color": "#fff",
// 按钮
"btn-primary-shadow": "0 2px 0 rgba(24, 144, 255, 0.2)",
"btn-border-radius-base": "6px",
"btn-height-lg": "44px",
"btn-font-size-lg": "16px",
// 输入框
"input-height-base": "40px",
"input-height-lg": "44px",
"input-border-color": "#d9d9d9",
// 表格
"table-header-bg": "#fafafa",
"table-header-sort-active-bg": "#e6f7ff",
"table-row-hover-bg": "#fafafa",
// 卡片
"card-head-padding": "16px 24px",
"card-body-padding": "24px",
"card-shadow": "0 2px 8px rgba(0, 0, 0, 0.08)",
// Modal
"modal-header-bg": "#fff",
"modal-mask-bg": "rgba(0, 0, 0, 0.45)"
},
additionalData: `@import "@/assets/styles/variables.less";`
}
}
},
server: {
port: 3000,
proxy: {
"/api": {
target: "http://localhost:7001",
changeOrigin: true,
rewrite: (path) => path.replace(/^\/api/, "/api")
}
}
}
});