成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

一分鐘學會使用electron將現有vue項目打包為exe桌面端應用

開發
最近有個項目前期是用vue開發的,開發完成之后,客戶提了一個新需求,我能不能不在瀏覽器中打開呢?能不能直接在電腦桌面上打開呢?瞬間腦瓜子嗡嗡的。

  [[344654]]

 使用electron
本身項目是使用vue-cli開發的,在使用electron之前,需要先將開發好的vue的項目打包生成打包之后的html文件及其他靜態資源文件。然后就可以直接拿官方demo進行打包了。

克隆官方demo

  1. git clone https://github.com/electron/electron-quick-start 

啟動項目

  1. cd electron-quick-start->npm install->npm start   到這就能運行demo了 

效果圖如下:

放入自己項目
將自己項目打包好的dist文件中的index.html和其他文件放入electron-quick-start(根目錄)文件夾中,重新start一下,運行結果如圖

這樣一個現有的vue項目就已經集成到了electron中。

打包生成exe文件
項目集成到了electron中,下一步就是打包生成我們需要的桌面端exe文件。

安裝插件

  1. npm install electron-packager --save-dev 

添加命令行
在package.json中增加以下代碼命令:

  1. "pack":"electron-packager . testexe --platform=win32 --arch=x64  --out=./out --asar --app-version=0.0.1" 
  • testexe是打包生成的exe文件名字
  • ./out是輸出路徑
  • app-version=0.0.1 是版本號

打包
運行命令打包成功

  1. npm run pack 

打包之后文件結構:

雙擊exe文件既可運行。

注意在electron中進行網絡請求時,因為本身項目使用了反向代理,打包后請求路徑前面會增加本地路徑“file:e/”,解決方式:

在項目中添加請求地址全路徑,可以根據自己需求修改

隱藏菜單欄
electron中默認帶有頂部菜單欄,有時候我們的應用不需要。可以在main.js中設置,隱藏菜單。代碼如下:

  1. // Modules to control application life and create native browser window 
  2. const {app, BrowserWindow,Menu} = require('electron'
  3. const path = require('path'
  4.  
  5. function createWindow () { 
  6.   //隱藏菜單 
  7.   Menu.setApplicationMenu(null
  8.   // Create the browser window. 
  9.   const mainWindow = new BrowserWindow({ 
  10.     width: 800, 
  11.     height: 600, 
  12.     webPreferences: { 
  13.       preload: path.join(__dirname, 'preload.js'
  14.     } 
  15.   }) 
  16.  
  17.   // and load the index.html of the app. 
  18.   mainWindow.loadFile('index.html'
  19.  
  20.   // Open the DevTools. 
  21.   // mainWindow.webContents.openDevTools() 

這樣默認的菜單欄就隱藏了,下面提供一些常用的配置項:

  1. 在main.js 當中通過配置 BrowserWindow 來改變外觀 
  2.  
  3. width Integer - 窗口寬度,單位像素. 默認是 800 . 
  4.  
  5. height Integer - 窗口高度,單位像素. 默認是 600 . 
  6.  
  7. Integer - 窗口相對于屏幕的左偏移位置.默認居中. y Integer - 窗口相對于屏幕的頂部偏移位置.默認居中. useContentSize Boolean - width 和 height 使用web網頁size, 這意味著實際窗口的size應該包括窗口框架的 size,稍微會大一點,默認為 false . center 
  8.  
  9. Boolean - 窗口屏幕居中. minWidth Integer - 窗口最小寬度,默認為 0 . 
  10.  
  11. minHeight Integer - 窗口最小高度,默認為 0 . 
  12.  
  13. maxWidth Integer - 窗口最大寬度,默認無限制. 
  14.  
  15. maxHeight Integer - 窗口最大高度,默認無限制. 
  16.  
  17. resizable Boolean - 是否可以改變窗口size,默認為 true . 
  18.  
  19. movable Boolean - 窗口是否可以拖動. 在 Linux 上無效. 默認為 true . 
  20.  
  21. minimizable Boolean - 窗口是否可以最小化. 在 Linux 上無效. 默認為 true . 
  22.  
  23. maximizable Boolean - 窗口是否可以最大化. 在 Linux 上無效. 默認為 true . 
  24.  
  25. closable Boolean - 窗口是否可以關閉. 在 Linux上無效. 默認為 true . 
  26.  
  27. alwaysOnTop Boolean - 窗口是否總是顯示在其他窗口之前. 在 Linux上無效. 默認為 false . 
  28.  
  29. fullscreen Boolean - 窗口是否可以全屏幕. 當明確設置值為When false ,全屏化按鈕將會隱藏,在 macOS 將禁用. 默認 false . 
  30.  
  31. fullscreenable Boolean - 在 macOS 上,全屏化按鈕是否可用,默認為 true . skipTaskbar Boolean - 是否在任務欄中顯示窗口. 默認是 false . 
  32.  
  33. kiosk Boolean - kiosk 方式. 默認為 false . title String - 窗口默認title. 默認 "Electron" . 
  34.  
  35. icon NativeImage - 窗口圖標, 如果不設置,窗口將使用可用的默認圖標. 
  36.  
  37. show Boolean - 窗口創建的時候是否顯示. 默認為 true . 
  38.  
  39. frame Boolean - 指定 false 來創建一個 Frameless Window. 默認為 true . 
  40.  
  41. acceptFirstMouse Boolean - 是否允許單擊web view來激活窗口 . 默認為 false . 
  42.  
  43. disableAutoHideCursor Boolean - 當 typing 時是否隱藏鼠標.默認 false . 
  44.  
  45. autoHideMenuBar Boolean - 除非點擊 Alt ,否則隱藏菜單欄.默認為 false . 
  46.  
  47. enableLargerThanScreen Boolean - 是否允許允許改變窗口大小大于屏幕. 默認是 false . 
  48.  
  49. backgroundColor String -窗口的 background color 值為十六進制,如 #66CD00 或 #FFF 或 #80FFFFFF (支持透明 度). 默認為在 Linux和 Windows 上為 #000 (黑色) , Mac上為 #FFF (或透明). 
  50.  
  51. hasShadow Boolean - 窗口是否有陰影. 只在 macOS 上有效. 默認為 true . 
  52.  
  53. darkTheme Boolean - 為窗口使用 dark 主題, 只在一些擁有 GTK+3 桌面環境上有效. 默認為 false . 
  54.  
  55. transparent Boolean - 窗口 透明. 默認為 false . 
  56.  
  57. type String - 窗口type, 默認普通窗口. 下面查看更多. titleBarStyle String - 窗口標題欄樣式. 下面查看更多. 
  58.  
  59. webPreferences Object - 設置界面特性. 下面查看更多. 

 

 

 

責任編輯:姜華 來源: 猴哥說前端
相關推薦

2019-02-28 15:04:36

顯卡兼容芯片

2017-03-30 19:28:26

HBase分布式數據

2018-06-26 05:23:19

線程安全函數代碼

2017-07-06 08:12:02

索引查詢SQL

2022-07-18 06:16:07

單點登錄系統

2020-05-21 19:46:19

區塊鏈數字貨幣比特幣

2017-02-21 13:00:27

LoadAverage負載Load

2018-07-31 16:10:51

Redo Undo數據庫數據

2011-02-21 17:48:35

vsFTPd

2018-12-12 22:51:24

Java包裝語言

2020-07-17 07:44:25

云計算邊緣計算IT

2016-09-12 17:28:45

云存儲應用軟件存儲設備

2020-07-09 07:37:06

數據庫Redis工具

2009-11-25 09:26:39

VS2003代碼

2021-09-28 14:02:19

電腦主板黑屏

2025-04-18 08:47:22

2020-06-11 08:04:12

WDMDWDMMWDM

2013-11-15 07:24:50

4G LTE圖解

2015-11-12 10:32:40

GitHub控制系統分布式

2016-12-16 11:05:00

分布式互斥線程
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产欧美一区二区精品忘忧草 | 国产乱码久久久久久 | 久久精品网 | 欧美日韩电影一区二区 | 国产成人一区在线 | 成人免费在线电影 | av网站推荐 | 欧美一二区 | 精品免费视频 | 日韩一区二区在线播放 | 91国产视频在线 | 欧产日产国产精品99 | www.成人在线视频 | 在线观看涩涩视频 | 中文字幕免费中文 | 亚洲精品视频一区 | 日韩二区 | 一级一片在线观看 | 欧美日韩国产一区二区三区不卡 | 久热国产精品视频 | 亚洲系列第一页 | 久久99视频免费观看 | 欧美区在线 | 久久精品视频一区二区三区 | 中文精品视频 | 欧美一级在线视频 | 在线国产视频 | 婷婷色成人 | 午夜专区 | 成人视屏在线观看 | 亚洲午夜网 | 欧美啪啪 | 三级黄色网址 | 伊色综合久久之综合久久 | 久久成人免费观看 | 亚洲国产成人精品女人久久久 | 久久不卡| 国产日韩欧美二区 | 五月激情综合网 | 国产一级黄色网 | 亚洲91视频|