const { defineConfig } = require('@vue/cli-service'); const path = require('path'); module.exports = defineConfig({ // 基础路径(根据你的部署环境调整) publicPath: './', // 输出目录 outputDir: 'dist', // 静态资源目录 assetsDir: 'static', // 关闭 eslint 校验(可选,根据项目需求) lintOnSave: false, // webpack 配置 configureWebpack: { // 配置路径别名(和 Vite 的 alias 功能一致) resolve: { alias: { '@': path.resolve(__dirname, 'src'), '@/components': path.resolve(__dirname, 'src/components'), '@/utils': path.resolve(__dirname, 'src/utils') } }, // 优化打包(可选) optimization: { minimizer: [ // 已安装 terser,可配置压缩 require('terser-webpack-plugin')({ terserOptions: { compress: { drop_console: process.env.NODE_ENV === 'production', // 生产环境移除 console drop_debugger: true // 移除 debugger } } }) ] }, // 解决可能的依赖冲突 resolve: { extensions: ['.vue', '.js', '.jsx', '.json'], fallback: { "crypto": require.resolve("crypto-js"), "text-encoding": require.resolve("text-encoding") } } }, // 链式修改 webpack 配置 chainWebpack: config => { // 处理 Vue 文件 config.module .rule('vue') .test(/\.vue$/) .use('vue-loader') .loader('vue-loader') .end(); // 处理 SCSS(项目依赖了 sass,需配置 loader) config.module .rule('scss') .test(/\.scss$/) .use('sass-loader') .loader('sass-loader') .options({ implementation: require('sass') }) .end(); }, // 环境变量配置(适配你的多环境脚本) devServer: { // 开发服务器配置(如代理、端口等) port: 8080, open: true, proxy: { // 示例:配置接口代理(根据你的项目需求调整) '/api': { target: 'https://your-api-domain.com', changeOrigin: true, pathRewrite: { '^/api': '' } } } } });