'use strict'; // Template version: 1.3.1 // see http://vuejs-templates.github.io/webpack for documentation. const path = require('path'); const minify = process.env.NODE_ENV === 'development' ? false : { collapseWhitespace: true, removeComments: true, removeRedundantAttributes: true, removeScriptTypeAttributes: true, removeStyleLinkTypeAttributes: true, useShortDoctype: true, minifyCSS: true, minifyJS: true }; function resolve (dir) { return path.join(__dirname, dir); } module.exports = { dev: { // Paths assetsSubDirectory: 'static', assetsPublicPath: '/', proxyTable: { '/api': { target: 'https://www.psciio.com/api/huacheng-communitybackstage', changeOrigin: true, pathRewrite: { '^/api': '/'// 重写, } }, '/dev': { target: 'http://192.168.5.149:6194/api/huacheng-communitybackstage', changeOrigin: true, pathRewrite: { '^/dev': '/'// 重写, } }, '/www': { // target: 'http://192.168.5.149:6194/api/huacheng-communitybackstage', // target: 'http://192.168.5.107:6194/api/huacheng-communitybackstage', // target: 'http://test.huacheng.nhys.cdnhxx.com/api/huacheng-communitybackstage', // target: 'http://test.huacheng.nhys.cdnhxx.com/api/huacheng-communitybackstage', target: 'https://www.psciio.com/api/huacheng-communitybackstage', // target: 'https://huacheng.psciio.com/api/huacheng-communitybackstage', changeOrigin: true, pathRewrite: { '^/www': '/'// 重写, } }, '/amap': { target: 'https://restapi.amap.com/v3/geocode/', changeOrigin: true, ws: true, pathRewrite: { '^/amap': 'https://restapi.amap.com/v3/geocode/' } }, '/aaToken': { target: 'http://117.172.73.171:9901/aaToken', changeOrigin: true, pathRewrite: { '^/aaToken': '/'// 重写, } }, '/communityactivity': { target: 'http://117.172.73.171:9901/communityactivity', changeOrigin: true, pathRewrite: { '^/communityactivity': '/'// 重写, } }, }, // Various Dev Server settings // host: '192.168.5.44', // can be overwritten by process.env.HOST localhost host: 'localhost', // can be overwritten by process.env.HOST port: 4846, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined autoOpenBrowser: false, errorOverlay: true, notifyOnErrors: true, poll: false, // https://webpack.js.org/configuration/dev-server/#devserver-watchoptions- /** * Source Maps */ // https://webpack.js.org/configuration/devtool/#development devtool: 'cheap-module-eval-source-map', // If you have problems debugging vue-files in devtools, // set this to false - it *may* help // https://vue-loader.vuejs.org/en/options.html#cachebusting cacheBusting: true, cssSourceMap: true }, build: { // Template for index.html index: path.resolve(__dirname, '../dist/index.html'), // Paths assetsRoot: path.resolve(__dirname, '../dist'), assetsSubDirectory: 'static', assetsPublicPath: './', /** * Source Maps */ productionSourceMap: false, // https://webpack.js.org/configuration/devtool/#production devtool: '#source-map', // Gzip off by default as many popular static hosts such as // Surge or Netlify already gzip all static assets for you. // Before setting to `true`, make sure to: // npm install --save-dev compression-webpack-plugin productionGzip: false, productionGzipExtensions: ['js', 'css'], // Run the build command with an extra argument to // View the bundle analyzer report after build finishes: // `npm run build --report` // Set to `true` or `false` to always turn it on or off bundleAnalyzerReport: process.env.npm_config_report }, test: { // Template for index.html index: path.resolve(__dirname, '../test/index.html'), // Paths assetsRoot: path.resolve(__dirname, '../test'), assetsSubDirectory: 'static', assetsPublicPath: './', /** * Source Maps */ productionSourceMap: false, // https://webpack.js.org/configuration/devtool/#production devtool: '#source-map', // Gzip off by default as many popular static hosts such as // Surge or Netlify already gzip all static assets for you. // Before setting to `true`, make sure to: // npm install --save-dev compression-webpack-plugin productionGzip: false, productionGzipExtensions: ['js', 'css'], // Run the build command with an extra argument to // View the bundle analyzer report after build finishes: // `npm run build --report` // Set to `true` or `false` to always turn it on or off bundleAnalyzerReport: process.env.npm_config_report }, // // pages: { // index: { // entry: 'src/views/index/main.js', // template: 'public/index.html', // filename: 'index.html', // chunks: ['chunk-vendors', 'chunk-common', 'index'], // minify // }, // preview: { // entry: 'src/views/preview/main.js', // template: 'public/preview.html', // filename: 'preview.html', // chunks: ['chunk-vendors', 'chunk-common', 'preview'], // minify // } // }, configureWebpack: { externals: { vue: 'Vue', 'vue-router': 'VueRouter', 'element-ui': 'ELEMENT' } }, chainWebpack (config) { // set svg-sprite-loader config.module .rule('svg') .exclude.add(resolve('src/icons')) .end(); config.module .rule('icons') .test(/\.svg$/) .include.add(resolve('src/icons')) .end() .use('svg-sprite-loader') .loader('svg-sprite-loader') .options({ symbolId: 'icon-[name]' }) .end(); } };