const path = require('path') function join (dir) { return path.join(__dirname, dir) } module.exports = { publicPath: process.env.NODE_ENV === '/active' ? '' : './', outputDir: 'zhejiangScreen', assetsDir: 'static', lintOnSave: process.env.NODE_ENV === 'development' ? 'error' : true, productionSourceMap: false, chainWebpack: config => { config.plugins.delete('prefetch') config.resolve.alias .set('api', join('src/api')) .set('assets', join('src/assets')) .set('components', join('src/components')) .set('directives', join('src/directives')) .set('filters', join('src/filters')) .set('multiPages', join('src/multiPages')) .set('store', join('src/store')) .set('style', join('src/style')) .set('utils', join('src/utils')) .set('views', join('src/views')) config.module .rule('svg') .include.add(join('src/components/svg-icon/svg')) .end() .test(/\.svg$/) .use('file-loader') .loader('svg-sprite-loader') .options({ symbolId: 'icon-[name]' }) // 修复HMR config.resolve.symlinks(true) }, configureWebpack: config => { config.devtool = process.env.NODE_ENV === 'production' ? 'none' : 'cheap-eval-source-map' config.externals = { echarts: 'echarts' } }, css: { sourceMap: false, // 为预处理器的 loader 传递自定义选项 loaderOptions: {} }, devServer: { open: false, host: '0.0.0.0', port: 9000, proxy: { '/api': { target: 'http://127.0.0.1:10001/api/', pathRewrite: { '^/api': '' }, logLevel: 'debug', changeOrigin: true, secure: false } }, https: false, hotOnly: true, before: app => {} } }