// const { defineConfig } = require('@vue/cli-service') // module.exports = defineConfig({ // transpileDependencies: true // }) const { defineConfig } = require('@vue/cli-service') const path = require('path') const resolve = (dir) => path.join(__dirname, dir) module.exports = defineConfig({ transpileDependencies: true, publicPath: '/', // 署应用包时的基本 URL。 vue-router hash 模式使用 outputDir: 'dist', // 生产环境构建文件的目录 assetsDir: 'static', // outputDir的静态资源(js、css、img、fonts)目录 lintOnSave: false, // eslint 检测 productionSourceMap: false, // 如果你不需要生产环境的 source map,可以将其设置为 false 以加速生产环境构建。 devServer: { hot: true, compress: true, historyApiFallback: true, static: { directory: path.join(__dirname, 'public') }, port: 8080, headers: { 'Access-Control-Allow-Origin': '*' } }, chainWebpack: (config) => { config.resolve.alias .set('@', resolve('src')) .set('assets', resolve('src/assets')) .set('api', resolve('src/api')) .set('views', resolve('src/views')) .set('components', resolve('src/components')) } }) // module.exports = defineConfig({ // // publicPath: '/', // 应用程序域名后的根目录,运行后为:http://localhost:8081/ ,如果设置子路径为/myh5/ :http://10.29.0.20:8082/myh5/ // outputDir: 'dist', // 生成生产环境文件的目录,(打包后的文件存放目录) // assetsDir: 'staticDir', // 防止生成的静态资源(js\css\img\fonts)(相对于outputDir的目录) // indexPath: 'index.html', // 指定生成的index.html的输出路径,在打包后也就是在dist文件中index.html生成的位置;如果写成a/b/c.html,那生成的dist里面index.html就是dist/a/b/c.html // filenameHashing: false, // 默认为true,在打包之后,生成的dist目录的静态资源的文件名会追加上hash值,比如,common.f151bhg.js,设置为false,就不要hash // // pages:{ // 多页模式下配置的,每个页面都有对应的条目文件,每个条目中都有entry,template,filename,title和chunks和其他自定义添加的属性 // // index:{} // // }, // lintOnSave: false, // 设置是否在开发环境下每次保存代码时都进行eslint验证 // // false:关闭每次保存都进行检测 // // true:开启每次保存都进行检测,效果与warning一样 // // ‘error’:开启每次保存都进行检测,lint 错误将显示到浏览器页面上,且编译失败。 // // ‘default’:同error // // ‘warning’:开启每次保存都进行检测,lint 错误将显示到控制台命令行,而且编译并不会失败。 // // 所有 webpack-dev-server 的选项都支持 // devServer: { // 配置dev的服务器,包括host,port,热更新,代理服务器配置等 // overlay: { // warnings: false, // errors: true // }, // host: 'http://localhost:8081/', // port: 8080, // open: true, // 配置自动启动浏览器 // hotOnly: true, // 开启热更新 // disableHostCheck: true, // proxy: { // '/mall': { // target: 'http://dev.baijin.com', // changeOrigin: true, // secure: false, // pathRewrite: { // '^/mall': '/mall' // } // } // } // }, // productionSourceMap: false, // 如果你不需要生产环境的 source map,可以将其设置为 false 以加速生产环境构建。 // // configureWebpack 和 chainWebpack 的作用相同(都是修改webpack的默认配置),唯一的区别就是它们修改 webpack 配置的方式不同: // // ①chainWebpack 通过链式编程的形式,来修改默认的 webpack 配置 // // ②configureWebpack 通过操作对象的形式,来修改默认的 webpack 配置 // configureWebpack: { // }, // css: { // css // // modules:false, //启用css的模块化?后面被requireModuleExtension属性替代 // // 为所有的 CSS 及其预处理文件开启 CSS Modules。 // // 这个选项不会影响 `*.vue` 文件。 // requireModuleExtension: true, // extract: false, // 使用css分离插件 ExtractTextPlugin?生产环境下是true,开发环境下是false // sourceMap: false, // 开启 CSS source maps? // loaderOptions: { // 将选项传递给预加载程序处理器 // css: {}, // 这里的选项会传递给 css-loader // postcss: {} // 这里的选项会传递给 postcss-loader // } // css预设器配置项 // }, // // 是否为 Babel 或 TypeScript 使用 thread-loader。 // // 该选项在系统的 CPU 有多于一个内核时自动启用,仅作用于生产构建 // parallel: require('os').cpus().length > 1, // // 向 PWA 插件传递选项 // pwa: {}, // // 可以用来传递任何第三方插件选项 // pluginOptions: {}, // // babel是一个编译器,主要作用是将ECMAScript 2015+版本的代码转换为向后兼容的js语法, // // 因为Vue项目中普遍使用ES6语法,若要求兼容低版本浏览器,就需要引入babel,将ES6转换为E5 // babel: {} // })