日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當前位置:首頁 > 科技  > 軟件

基于Electron快速將任意網站打包成跨平臺的桌面端軟件

來源: 責編: 時間:2023-12-21 17:11:17 269觀看
導讀hi, 大家好, 我是徐小夕.之前有些用戶和朋友希望我基于H5-Dooring開發(fā)一款桌面端應用, 最近剛好有時間, 就花了小半天時間使用electron開發(fā)了桌面端的軟件Dooring-electron。當然這篇文章不會介紹如何從零使用 electr

5Ld28資訊網——每日最新資訊28at.com

hi, 大家好, 我是徐小夕.5Ld28資訊網——每日最新資訊28at.com

之前有些用戶和朋友希望我基于H5-Dooring開發(fā)一款桌面端應用, 最近剛好有時間, 就花了小半天時間使用electron開發(fā)了桌面端的軟件Dooring-electron。5Ld28資訊網——每日最新資訊28at.com

5Ld28資訊網——每日最新資訊28at.com

當然這篇文章不會介紹如何從零使用 electron , 而是會提供一種方案, 幫助大家快速的將線上網站轉化為 electron 應用。5Ld28資訊網——每日最新資訊28at.com

文章最后我也會分享一款我朋友開發(fā)的在線工具, 可以不寫一行代碼, 輕松把線上網站轉化為桌面端軟件。5Ld28資訊網——每日最新資訊28at.com

electron的一些知識

熟悉Electron的朋友也許知道, Electron繼承了來自 Chromium 的多進程架構,這使得Electron在架構上非常類似于一個現(xiàn)代的網頁瀏覽器。我們可以控制兩種類型的進程:主進程和渲染器。5Ld28資訊網——每日最新資訊28at.com

每個 Electron 應用都有一個單一的主進程,作為應用程序入口。主進程在 Node 環(huán)境中運行,我們可以使用所有 Node 的能力。5Ld28資訊網——每日最新資訊28at.com

那么主進程中我們可以做些什么呢? 主進程的主要目的是使用 BrowserWindow 模塊創(chuàng)建和管理應用程序窗口。5Ld28資訊網——每日最新資訊28at.com

BrowserWindow 類的每個實例創(chuàng)建一個應用程序窗口,且在單獨的渲染器進程中加載一個網頁。我們可從主進程用 window 的 webContent 對象與網頁內容進行交互。5Ld28資訊網——每日最新資訊28at.com

有了以上基礎, 我畫了一張dooring-electron 的簡單架構圖方便大家理解:5Ld28資訊網——每日最新資訊28at.com

5Ld28資訊網——每日最新資訊28at.com

想對electron有更多直觀理解的, 也可以參考其官網:5Ld28資訊網——每日最新資訊28at.com

https://www.electronjs.org/。5Ld28資訊網——每日最新資訊28at.com

實現(xiàn)將線上網站打包成桌面端軟件

我們知道如果想要加載第三方網絡資源, 可以使用 mainWindow.loadURL(url) 來實現(xiàn), 所以只需要將網址放到 loadURL 方法中讓 electron 打開即可:5Ld28資訊網——每日最新資訊28at.com

const mainWindow = new BrowserWindow({    maximizable: true,    show: false,    title: "H5-dooring網站制作平臺",    fullscreen: false,    center: true,    webPreferences: {      preload: path.join(__dirname, 'preload.js'),      enableRemoteModule: true,      nodeIntegration: true,    },  });  mainWindow.maximize();  mainWindow.setAutoHideMenuBar(true);  mainWindow.loadURL('your website address');

同時如果想要控制網站打開新的頁面時的窗口尺寸, 我們只需要對窗口進行監(jiān)聽, 來動態(tài)設置新窗口的尺寸即可:5Ld28資訊網——每日最新資訊28at.com

mainWindow.webContents.setWindowOpenHandler((details) => {    const base = {      fullscreen: false,      skipTaskbar: true,      center: true,      maximizable: true,      autoHideMenuBar: false,//自動隱藏菜單欄      // icon: iconPath,// 窗口圖標      parent: null ,//指定父窗口      resizable: true,      webPreferences: {//網頁功能設置。        webSecurity: false,//禁用同源策略        nodeIntegration: true,        nodeIntegrationInWorker: true,        enableRemoteModule: true,        contextIsolation: false      },    }    const h5Win = {      width: 1200,      minWidth: 1200,      minHeight: 775,      height: 775,      y: 60,    }    const otherWin = {      width: 1200,      minWidth: 1200,      minHeight: 800,      height: 800,      y: 60,    }    if (details.url.indexOf('/preview') > -1) {   return {     action: 'allow',//允許新窗口被創(chuàng)建    overrideBrowserWindowOptions: {//允許自定義創(chuàng)建的窗口參數(shù)          ...base,     ...h5Win,    }   }  }    if (details.url.indexOf('/ide') > -1) {   return {     action: 'allow',//允許新窗口被創(chuàng)建    overrideBrowserWindowOptions: {//允許自定義創(chuàng)建的窗口參數(shù)          ...base,     ...otherWin,    }   }  }    if (details.url.indexOf('/h5_plus') > -1) {   return {     action: 'allow',//允許新窗口被創(chuàng)建    overrideBrowserWindowOptions: {//允許自定義創(chuàng)建的窗口參數(shù)          ...base,          width: 1500,          height: 860    }   }  }  return {       action: 'allow',//允許新窗口被創(chuàng)建      overrideBrowserWindowOptions: {//允許自定義創(chuàng)建的窗口參數(shù)        ...base,        ...otherWin,       }    } })

對于網站打包的配置 electron 文檔上介紹的很詳細, 這里我就不一一介紹了, 大家可以在 github 上參考學習:5Ld28資訊網——每日最新資訊28at.com

  • https://github.com/MrXujiang/h5-dooring-electron-demo。

不用寫一行代碼, 輕松將你的網站打包成桌面端軟件

5Ld28資訊網——每日最新資訊28at.com

在線地址:https://webdesk.pigjs.com/builder。5Ld28資訊網——每日最新資訊28at.com

我親自體驗了一下, 使用起來還是相當方便的, 不需要寫一行代碼就可以將網站轉化的桌面端軟件, 以下是一些功能優(yōu)缺點介紹.5Ld28資訊網——每日最新資訊28at.com

5Ld28資訊網——每日最新資訊28at.com

Webdesk 功能及特點:

  • 快速轉換:WebDesk可以在幾分鐘內將網頁轉換為桌面應用,無需編碼或復雜的設置。
  • 多平臺支持:可以將網頁轉化成 Window 桌面應用、macOs桌面應用。
  • 廣泛的應用場景:無論是保存在線課程、工作文檔還是個人網站,WebDesk都是將其轉換為桌面應用的理想選擇。

Webdesk 缺點:

  • 無代碼簽名:安裝時可能因未簽名而被系統(tǒng)提示存在安全隱患。
  • 體積過大:安裝包體積約為 80MB,相對較大。
  • 內存占用高:運行時內存占用較高。
  • 無法離線使用:需要網絡連接才能使用,不支持離線模式。

Webdesk 未來規(guī)劃:

  • 代碼簽名:增加自動或自定義代碼簽名功能,提高安裝安全性。
  • 應用平臺上架:實現(xiàn)從構建到平臺分發(fā)的完整流程。
  • 體積減?。簝?yōu)化安裝包,減小體積,降低內存占用。
  • 離線使用:增加離線使用功能,無需網絡即可使用。
  • 多語言支持:增加多語言支持。

本文鏈接:http://www.www897cc.com/showinfo-26-51238-0.html基于Electron快速將任意網站打包成跨平臺的桌面端軟件

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯(lián)系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 如何設計更優(yōu)雅的 React 組件?

下一篇: 研發(fā)提效必備技能:25張圖手把手教你基于Docker搭建Maven私服倉庫

標簽:
  • 熱門焦點
  • 6月安卓手機性價比榜:Note 12 Turbo斷層式碾壓

    6月份有一個618,雖然這是京東周年慶的日子,但別的電商也都不約而同的跟進了,反正促銷沒壞處,廠商和用戶都能滿意。618期間一些產品也出現(xiàn)了歷史低價,那么各個價位段的產品性價比
  • 帥氣純真少年!日本最帥初中生選美冠軍出爐

    日本第一帥哥初一生選美大賽冠軍現(xiàn)已正式出爐,冠軍是來自千葉縣的宗田悠良。日本一直熱衷于各種選美大賽,從“最美JK”起到“最美女星&r
  • 8月總票房已突破10億!《封神》第一:口碑已經成了

    8月5日消息,據燈塔專業(yè)版數(shù)據,截至8月5日9時35分,8月總票房(含預售)已突破10億。其中,《封神》以大比分的優(yōu)勢領先。根據官方消息,目前該片總票房已經超過14.
  • 學習JavaScript的10個理由...

    作者 | Simplilearn編譯 | 王瑞平當你決心學習一門語言的時候,很難選擇到底應該學習哪一門,常用的語言有Python、Java、JavaScript、C/CPP、PHP、Swift、C#、Ruby、Objective-
  • 三言兩語說透柯里化和反柯里化

    JavaScript中的柯里化(Currying)和反柯里化(Uncurrying)是兩種很有用的技術,可以幫助我們寫出更加優(yōu)雅、泛用的函數(shù)。本文將首先介紹柯里化和反柯里化的概念、實現(xiàn)原理和應用
  • 只需五步,使用start.spring.io快速入門Spring編程

    步驟1打開https://start.spring.io/,按照屏幕截圖中的內容創(chuàng)建項目,添加 Spring Web 依賴項,并單擊“生成”按鈕下載 .zip 文件,為下一步做準備。請在進入步驟2之前進行解壓。圖
  • 本地生活這塊肥肉,拼多多也想吃一口

    出品/壹覽商業(yè) 作者/李彥編輯/木魚拼多多也看上本地生活這塊蛋糕了。近期,拼多多在App首頁“充值中心”入口上線了本機生活界面。壹覽商業(yè)發(fā)現(xiàn),該界面目前主要
  • 機構稱Q2國內智能手機銷量同比下滑4% vivo份額重回第1

    7月29日消息,根據市場調查機構Counterpoint Research公布的最新報告,2023年第2季度中國智能手機銷量同比下降4%,創(chuàng)新自2014年以來第2季度銷量新低。報
  • 國行版三星Galaxy Z Fold5/Z Flip5發(fā)布 售價7499元起

    2023年8月3日,三星電子舉行Galaxy新品中國發(fā)布會,正式在國內推出了新一代折疊屏智能手機三星Galaxy Z Fold5與Galaxy Z Flip5,以及三星Galaxy Tab S9
Top 主站蜘蛛池模板: 大庆市| 军事| 巴里| 铅山县| 乌拉特后旗| 永州市| 察雅县| 道真| 兴文县| 盐边县| 伊川县| 左云县| 陕西省| 寿宁县| 霸州市| 兴安县| 青岛市| 土默特左旗| 屯留县| 浠水县| 舟山市| 新野县| 财经| 苍南县| 吴川市| 鄂托克前旗| 临海市| 开封县| 平阴县| 罗甸县| 汶川县| 万全县| 冕宁县| 河源市| 白沙| 古浪县| 铜山县| 尉犁县| 桐城市| 宜黄县| 辛集市|