| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204 |
- 'use strict';
- const dayjs = require('dayjs');
- const path = require('path');
- /**
- * 默认配置
- * https://www.yuque.com/u34495/mivcfg/guk1x0
- */
- module.exports = (appInfo) => {
- /**
- * built-in config
- **/
- const config = {};
- /**
- * 应用模式配置
- */
- config.developmentMode = {
- default: 'vue',
- mode: {
- vue: {
- hostname: 'localhost',
- port: 8080
- },
- react: {
- hostname: 'localhost',
- port: 3000
- },
- html: {
- hostname: 'localhost',
- indexPage: 'index.html'
- },
- }
- };
- /**
- * 开发者工具
- */
- config.openDevTools = false;
- /**
- * 应用程序顶部菜单
- * boolean | string
- * true, false, 'dev-show'(dev环境显示,prod环境隐藏)
- */
- config.openAppMenu = 'dev-show';
- /**
- * 主窗口
- */
- config.windowsOption = {
- title: 'EE框架',
- width: 980,
- height: 650,
- minWidth: 800,
- minHeight: 650,
- webPreferences: {
- //webSecurity: false, // 跨域问题 -> 打开注释
- contextIsolation: false, // false -> 可在渲染进程中使用electron的api,true->需要bridge.js(contextBridge)
- nodeIntegration: true,
- //preload: path.join(appInfo.baseDir, 'preload', 'bridge.js'),
- },
- frame: true,
- show: true,
- icon: path.join(appInfo.home, 'public', 'images', 'logo-32.png'),
- };
- /**
- * ee框架日志
- */
- config.logger = {
- appLogName: `ee-${dayjs().format('YYYY-MM-DD')}.log`,
- errorLogName: `ee-error-${dayjs().format('YYYY-MM-DD')}.log`
- }
- /**
- * 远程web地址 (可选)
- */
- config.remoteUrl = {
- enable: false, // 是否启用
- url: 'https://discuz.chat/' // Any web url
- };
- /**
- * 内置java服务 默认关闭
- */
- config.javaServer = {
- enable: false, // 是否启用,true时,启动程序时,会自动启动 build/extraResources/app.jar 下的 java程序
- port: 18080, // 端口,端口被占用时随机一个端口,并通知前端修改请求地址。
- jreVersion: 'jre1.8.0_201', // build/extraResources/目录下 jre 文件夹名称
- // java 启动参数,该参数可以根据自己需求自由发挥
- opt: '-server -Xms512M -Xmx512M -Xss512k -Dspring.profiles.active=prod -Dserver.port=${port} -Dlogging.file.path="${path}" ',
- name: 'app.jar' // build/extraResources/目录下 jar 名称
- }
- /**
- * 内置socket服务
- */
- config.socketServer = {
- enable: false, // 是否启用
- port: 7070, // 默认端口(如果端口被使用,则随机获取一个)
- path: "/socket.io/", // 默认路径名称
- connectTimeout: 45000, // 客户端连接超时时间
- pingTimeout: 30000, // 心跳检测超时时间
- pingInterval: 25000, // 心跳检测间隔
- maxHttpBufferSize: 1e8, // 每条消息的数据最大值 1M
- transports: ["polling", "websocket"], // http轮询和websocket
- cors: {
- origin: true, // http协议时,要设置允许跨域
- }
- };
- /**
- * 内置http服务
- */
- config.httpServer = {
- enable: false, // 是否启用
- https: {
- enable: false,
- key: '/public/ssl/localhost+1.key', // key文件
- cert: '/public/ssl/localhost+1.pem' // cert文件
- },
- port: 7071, // 默认端口(如果端口被使用,则随机获取一个)
- cors: {
- origin: "*" // 跨域
- },
- body: {
- multipart: true,
- formidable: {
- keepExtensions: true
- }
- },
- filterRequest: {
- uris: [
- 'favicon.ico'
- ],
- returnData: '' // 任何数据类型
- }
- };
- /**
- * 主进程
- */
- config.mainServer = {
- host: '127.0.0.1',
- port: 7072, // 默认端口(如果端口被使用,则随机获取一个)
- };
- /**
- * 硬件加速
- */
- config.hardGpu = {
- enable: false
- };
- /**
- * 应用自动升级 (可选)
- */
- config.autoUpdate = {
- windows: false, // windows平台
- macOS: false, // macOs 需要签名验证
- linux: false, // linux平台
- options: {
- provider: 'generic', // or github, s3, bintray
- url: 'http://kodo.qiniu.com/' // resource dir, end with '/'
- },
- force: false, // 强制更新(运行软件时,检查新版本并后台下载安装)
- };
- /**
- * 被浏览器唤醒 (可选)
- */
- config.awakeProtocol = {
- protocol: 'ee', // 自定义协议名(默认你的应用名称-英文)
- args: []
- };
- /**
- * 托盘 (可选)
- */
- config.tray = {
- title: 'EE程序', // 托盘显示标题
- icon: '/public/images/tray_logo.png' // 托盘图标
- };
- /**
- * 插件功能
- * window 官方内置插件
- * example demo插件
- */
- config.addons = {
- window: {
- enable: true,
- },
- example: {
- enable: true,
- }
- };
- return {
- ...config
- };
- }
|