Windows平台下使用electron进行网页打包

  1. 教程
    • https://zhuanlan.zhihu.com/p/161864662
  2. 步骤
    • 安装nodej.s
      • 如何查看自己是否安装了node.js
    • 安装asar
      • 如何查看自己是否安装了asar
      • npm install -g asar
    • 安装Electron
      • 下载windows安装包
        • Release electron v9.1.0 · electron/electron · GitHub
        • 这里需要注意的是,一定要下载windows平台安装包,否则后面会报错
      • 配置Electron
        • 在Electron目录中新建app目录, 放置如下两个文件:
        • 两个文件分别的代码如下
        • main.js
        • 如果你的网址有变化的话,就修改一下 const mainWindowURL 变量的值
        • // app 模块是为了控制整个应用的生命周期设计的。
          // BrowserWindow 类让你有创建一个浏览器窗口的权力。
          const {app, BrowserWindow, Menu, ipcMain} = require('electron');
          const nativeImage = require('electron').nativeImage;
          var overlay = nativeImage.createFromPath('icon.png');

          const mainWindowURL = 'https://www.processon.com';

          let mainWindow;

          //api:https://wizardforcel.gitbooks.io/electron-doc/content/api/browser-window.html
          function createWindow () {
          console.log("createWindow......");
          mainWindow = new BrowserWindow({
          // fullscreen: true,
          maximizable: true, //支持最大化
          show: false, //为了让初始化窗口显示无闪烁,先关闭显示,等待加载完成后再显示。
          // icon: "https://medical.3vyd.com/alk/prod/pc/icon/icon.ico"
          })

          // Emitted when the window is closed.
          mainWindow.on('closed', function () {
          console.log("closed......");
          mainWindow = null;
          })
          // mainWindow.once('ready-to-show', () => { //开启这个以后点击了图片虽然没有白屏,但是会感觉不到点了没点
          mainWindow.maximize(); //打开时最大化打开,不是全屏,保留状态栏
          // })

          // mainWindow.setOverlayIcon(overlay, "ProcessOn")
          mainWindow.setTitle("ProcessOn");
          mainWindow.setAutoHideMenuBar(true);//自动隐藏菜单
          mainWindow.loadURL(mainWindowURL);
          // app.commandLine.appendSwitch("--disable-http-cache") 禁用缓存
          // mainWindow.webContents.openDevTools({mode:'bottom'});
          mainWindow.show();
          }

          app.on('ready', function() {
          console.log("ready......");
          createWindow();
          });

          // Quit when all windows are closed.
          app.on('window-all-closed', function () {
          // On OS X it is common for applications and their menu bar
          // to stay active until the user quits explicitly with Cmd + Q
          if (process.platform !== 'darwin') {
          app.quit();
          }
          })
        • package.json
        • { "name": "electron", "productName": "Electron", "main": "main.js" }
    • 进行打包
      • 使用如下命令打包
      • 进入electron/resources目录,将这个文件夹下原有的default_app.asar来删除
      • 根目录下进行打包,这里一定要看清楚,一定是该目录点,其他目录会报错的
      • asar pack app default_app.asar
        • 这个代码的运行速度非常快,瞬间就可以完成
        • 运行代码之后会在根目录下生成一个default_app.asar
        • 我们将这个文件重新放到resources下面,那么整个打包过程就算完成了
    • 运行
      • 运行electon.exe文件即可 ,如果你有需求的话,可以将其改下名即可
      • 可以看到我们百度一下,你就知道的网页已经出来了
  3. 出现的问题
    • 打包完成之后,双击excel文件没反应
      • 有可能是打包的这个软件不适合于当前系统环境
        • 可以看一下自己下载的这个文件是不是自己对应平台的,会不会下载错成linux或者make平台下的了
      • 确保自己main.js 和package.json两个文件里面的内容不为空
        • 有时候就犯这么低级的错误
    • 不生成exe文件
      • 打包一定是在根目录下对APP文件夹进行打包的,不要去resources下面打包,这个问题自己卡了好长一段时间,后来才在大佬的指导下解决的
    • 'electron' 不是内部或外部命令,也不是可运行的程序 或批处理文件。
      • 安装electron即可
      • npm install electron -g
  4. 需要注意的问题
    • 必须在英文路径下,否则会报错


©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,242评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,769评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,484评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,133评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,007评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,080评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,496评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,190评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,464评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,549评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,330评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,205评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,567评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,889评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,160评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,475评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,650评论 2 335

推荐阅读更多精彩内容