'use strict' const path = require('path') const os = require('os') function resolve(dir) { return path.join(__dirname, dir) } const name = process.env.VUE_APP_TITLE || 'Easy Industrial Report' // 网页标题 const port = process.env.port || process.env.npm_config_port || 81 // 端口 process.env.VUE_APP_WINNAME = os.hostname() process.env.VUE_APP_SOFTWARENAME = name // vue.config.js 配置说明 //官方vue.config.js 参考文档 https://cli.vuejs.org/zh/config/#css-loaderoptions // 这里只列一部分,具体配置参考文档 module.exports = { // 部署生产环境和开发环境下的URL。 // 默认情况下,Vue CLI 会假设你的应用是被部署在一个域名的根路径上 publicPath: process.env.NODE_ENV === "production" ? "/" : "/", // 在npm run build 或 yarn build 时 ,生成文件的目录名称(要和baseUrl的生产环境路径一致)(默认dist) outputDir: 'dist', // 用于放置生成的静态资源 (js、css、img、fonts) 的;(项目打包之后,静态资源会放在这个文件夹下) assetsDir: 'static', lintOnSave: process.env.NODE_ENV === 'development', productionSourceMap: true, devServer: { port: port, // open: true, }, configureWebpack: { name: name, resolve: { alias: { '@': resolve('src') }, fallback: { path: require.resolve("path-browserify"), } }, plugins: [], }, chainWebpack(config) { config.plugins.delete('preload') // TODO: need test config.plugins.delete('prefetch') // TODO: need test // svg 环境 config.module .rule('svg') .exclude.add(resolve('src/assets/icons')) .end() config.module .rule('icons') .test(/\.svg$/) .include.add(resolve('src/assets/icons')) .end() .use('svg-sprite-loader') .loader('svg-sprite-loader') .options({ symbolId: 'icon-[name]' }) .end() }, pluginOptions: { electronBuilder: { customFileProtocol: './', builderOptions: { 'productName': name, // 生成 exe 的名字 'appId': 'com.jd.cqcy', // 包名 'copyright': 'cqcy', // 版权信息 'extraFiles': ['./public/pkg'], 'nsis': { 'oneClick': false, // 是否一键安装 'allowElevation': true, // 允许请求提升。若为 false,则用户必须使用提升的权限重新启动安装程序 'allowToChangeInstallationDirectory': true, // 是否允许修改安装目录 'installerIcon': './build/icons/icon.ico', // 安装时图标 'uninstallerIcon': './build/icons/icon.ico', // 卸载时图标 'installerHeaderIcon': './build/icons/icon.ico', // 安装时头部图标 'createDesktopShortcut': true, // 是否创建桌面图标 'createStartMenuShortcut': true, // 是否创建开始菜单图标 'shortcutName': name, // 快捷方式名称 'runAfterFinish': false // 是否安装完成后运行 }, 'win': { 'icon': 'build/icons/icon.ico', // 图标路径 'target': [{ 'target': 'nsis', // 利用 nsis 制作安装程序 'arch': ['x64'] }], 'publish': [ { 'provider': 'generic', 'url': 'http://192.168.1.99:8081/' } ] } } } } }