const path = require('path'); function resolve(dir) { return path.join(__dirname, dir); } const cdn = { js: [ // vue 必须优先加载(生产环境使用最小运行时版本runtime.min, 其他环境使用全版本) process.env.NODE_ENV !== 'production' ? 'https://cdn.bootcss.com/vue/2.6.10/vue.js' : 'https://cdn.bootcss.com/vue/2.6.9/vue.runtime.min.js', // vue-router 'https://cdn.bootcss.com/vue-router/3.0.6/vue-router.min.js', // element js 'https://unpkg.com/element-ui/lib/index.js' ], css: [ // element css 'https://unpkg.com/element-ui/lib/theme-chalk/index.css' ] }; module.exports = { lintOnSave: false, publicPath: process.env.NODE_ENV === 'production' ? './' : '/', assetsDir: "public", outputDir: 'dist', chainWebpack: (config) => { // 通过 html-webpack-plugin注入到 index.html config.plugin('html').tap(args => { args[0].cdn = cdn; return args; }); }, configureWebpack: { resolve: { alias: { '@': resolve('src'), 'view': resolve('src/view'), 'assets': resolve('src/assets'), 'common': resolve('src/common') } }, externals: { Vue: 'vue', 'router': 'router', 'ElementUI': 'element-ui' } }, devServer: { host: '0.0.0.0', port: 8080, https: false, hotOnly: false, proxy: null, // 设置代理 before: () => {} } };