The oa/config/index.js file defines the Webpack configuration for both production builds and development server environments.
Production Build (build)
env: Environment variables loaded from ./prod.env.index: The output path for index.html (resolved to ../dist/index.html).assetsRoot: The output directory for all assets (resolved to ../dist).assetsSubDirectory: The subdirectory for static assets (defaults to static).assetsPublicPath: The base path for assets (set to /vue-admin/).productionSourceMap: Enables/disables source maps in production.productionGzip: Enables Gzip compression. Note: requires compression-webpack-plugin to be installed if set to true.productionGzipExtensions: File extensions to be gzipped (defaults to ['js', 'css']).bundleAnalyzerReport: Controls whether the bundle analyzer report is generated. This can be triggered via CLI.
Development Server (dev)
env: Environment variables loaded from ./dev.env.port: The local development server port (defaults to 8080).autoOpenBrowser: Automatically opens the browser on startup.assetsPublicPath: The base path for assets in development (defaults to /).proxyTable: Configuration for API proxying (currently empty {}).cssSourceMap: Enables/disables CSS sourcemaps.
module.exports = {
build: {
env: require('./prod.env'),
index: path.resolve(__dirname, '../dist/index.html'),
assetsRoot: path.resolve(__dirname, '../dist'),
assetsSubDirectory: 'static',
assetsPublicPath: '/vue-admin/',
productionSourceMap: true,
productionGzip: false,
productionGzipExtensions: ['js', 'css'],
bundleAnalyzerReport: process.env.npm_config_report
},
dev: {
env: require('./dev.env'),
port: 8080,
autoOpenBrowser: true,
assetsSubDirectory: 'static',
assetsPublicPath: '/',
proxyTable: {},
cssSourceMap: false
}
}