当前位置: 首页 > 工具软件 > electron-egg > 使用案例 >

electron-egg配置

章哲茂
2023-12-01

config文件:

# 位置
./electron/config/

# 说明
config.default.js // 默认配置文件,开发环境和生产环境都会加载
config.local.js // 开发环境配置文件,追加和覆盖default配置文件
config.prod.js // 生产环境配置文件,追加和覆盖default配置文件

属性说明

  • 开发模式配置
config.developmentMode = {
    default: 'vue',
    mode: {
      vue: {
        hostname: 'localhost',
        port: 8080
      },
      react: {
        hostname: 'localhost',
        port: 3000
      },
      html: {
        hostname: 'localhost',
        indexPage: 'index.html' // 首页
      },
    }
};
  • 开发者工具
config.openDevTools = false;
  • 应用程序顶部菜单
config.openAppMenu = true;
  • 加载loading页
config.loadingPage = true;

# 页面路径,可自行修改
./public/html/loading.html
  • 主窗口
// 更多属性,见文档:https://www.electronjs.org/zh/docs/latest/api/browser-window#new-browserwindowoptions
config.windowsOption = {
  width: 980, // 软件窗口宽度
  height: 650, // 软件窗口高度
  minWidth: 800, // 软件窗口最小宽度
  minHeight: 650, // 软件窗口最小高度
  webPreferences: {
    //webSecurity: false,
    contextIsolation: false, // 设置此项为false后,才可在渲染进程中使用electron api
    nodeIntegration: true, // node模块
  },
  frame: true,
};
  • 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
};
  • 内置socket服务
# 第三方软件,可通过socket-client监听端口,与ee框架通信
config.socketServer = {
  enable: false, // 是否启用
  port: 7070, // 默认端口
  isDynamic: false, // 如果值为false,框架默认使用port端口(如果默认端口被使用,则随机获取一个);如果为true,默认端口无效,框架随机生成
  path: "/socket.io/", // 默认路径名称
  connectTimeout: 45000, // 客户端连接超时时间
  pingTimeout: 30000, // 心跳检测超时时间
  pingInterval: 25000, // 心跳检测间隔
  maxHttpBufferSize: 1e8, // 每条消息的数据最大值 1M
  transports: ["polling", "websocket"], // http轮询和websocket
  cors: {
    origin: true, // http协议时,要设置允许跨域
  }
};
  • 内置http服务
# 可在前端、浏览器、终端命令中,访问EE程序  
config.httpServer = {
  enable: false, // 是否启用
  port: 7071, // 默认端口(如果端口被使用,则随机获取一个)
  cors: {
    origin: "*" // 跨域
  }
};
  • 主进程
config.mainServer = {
  host: '127.0.0.1',
  port: 7072, // 默认端口(如果端口被使用,则随机获取一个)
}; 
  • 应用自动升级 (可选)
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' // 托盘图标
}

 类似资料: