const path = require('path') const { name } = require('./package') const webpack = require('webpack'); const debug = process.env.NODE_ENV !== 'production' module.exports = { lintOnSave: false, publicPath: process.env.VUE_APP_PUBLICPATH, assetsDir: 'static', productionSourceMap: false, outputDir: 'www', pages: { index: { entry: 'src/main.js', template: 'public/index.html', filename: 'index.html', chunks: ['chunk-vendors', 'chunk-common', 'index'], cdn: { css: [ // 'https://cdn.jsdelivr.net/npm/element-ui@2.13.2/lib/theme-chalk/index.css' ], js: [ // 'https://cdn.jsdelivr.net/npm/vue@2.6.11/dist/vue.min.js', // 'https://cdn.jsdelivr.net/npm/vue-router@3.2.0/dist/vue-router.min.js', // 'https://cdn.jsdelivr.net/npm/vuex@3.5.1/dist/vuex.min.js', // 'https://cdn.jsdelivr.net/npm/element-ui@2.13.2/lib/index.js', // 'https://cdn.jsdelivr.net/npm/axios@0.19.2/dist/axios.min.js' ] } } }, chainWebpack: config => { // 移除 prefetch 插件 config.plugins.delete('prefetch') }, configureWebpack: { output: { library: 'statistic-ui', libraryTarget: 'umd', jsonpFunction: `webpackJsonp_${name}` }, // externals: { // 'element-ui': 'ELEMENT', // vue: 'Vue', // 'vue-router': 'VueRouter', // vuex: 'Vuex', // axios: 'axios' // }, resolve: { alias: { '@': path.resolve(__dirname, './src'), '@api': path.resolve(__dirname, './src/api'), vue$: 'vue/dist/vue.esm.js' } }, plugins: [ new webpack.optimize.LimitChunkCountPlugin({ maxChunks: 5, minChunkSize: 10000 }) ] }, devServer: { port: 30000, headers: { 'Access-Control-Allow-Origin': '*' }, proxy: { '/api': { target: process.env.VUE_APP_API_BASE_URL, changeOrigin: true, ws: true, pathRewrite: { '^/api': '' } } } } }