打包mode
https://github.com/electron/electron-quick-start
運行方法
#克隆這個倉庫 git clone https://github.com/electron/electron-quick-start #進入倉庫 cd electron-quick-start #安裝依賴 npm i #運行應用程序 npm start
將此應用程序與用於 API 代碼示例的Electron API Demos應用程序一起使用,以幫助您入門。
一個基本的 Electron 應用程序只需要這些文件:
package.json
- 指向應用程序的主文件並列出其詳細信息和依賴項。main.js
- 啟動應用程序並創建一個瀏覽器窗口來呈現 HTML。這是應用程序的主要流程。index.html
- 要呈現的網頁。這是應用程序的渲染進程。
頁面樣式修改(二選其一)
main.js
package.json文件
"build": { "appId": "cc11001100.electron.example-001", // 程序包名 "copyright": "CC11001100", // 版權相關信息 "productName": "example-001", // 項目名字 "dmg": { "background": "res/background.png", // 背景圖片的路徑 "window": { // 啟動后窗口左上角位置 "x": 100, "y": 100, // 啟動后窗口的大小 "width": 500, "height": 300 } }, "win": { // 打包后的文件會有個圖標,這個圖標的路徑,不指定的話默認的不好看 "icon": "res/logo.png" }
安裝打包插件 electron-packager
npm install electron-packager --save-dev
修改package.json文件 添加如下命令,使其可以打包為exe
"package":"electron-packager . test --platform=win32 --arch=x64 --out=./out --asar --app-version=0.0.1"
. ---- 當前目錄下所有文件
test ---- 打包后的exe名稱
out --- 打包后輸出文件地址
version ---- 版本號
打包后的目錄 其中test.exe就是啟動文件 直接點開看到效果 和npm run start 是一樣的
修改main.js
加載文件地址指向你的dist內的index.html
可以打開調式模式
修改窗口左上角圖標
關閉菜單欄
main.js修改后start運行效果圖如下
當我打包完成后,進行運行的時候發現給我報了
Error: Redirected when going from "/login" to "/home" via a navigation guard.
路由報錯
我正常是用的情況頁面掉接口跳轉頁面
loginApi(‘賬號’, ‘密碼’).then((res) => { if (res.data.errno === 0) { // 跳轉路由 this.$router.push("/user");
// 存儲到本地
setToken(res.data.data);
} });
router文件
router.beforeEach((to, from, next) => { if (!getToken()) { next('/login') } else{ next() } })
分析:以上運行時點擊登陸出現錯誤,console的時候發現緩存的內容沒有存上,原因是在登陸時守衛路由沒有拿到token的值,
更改后:直接存儲在window上
頁面掉接口跳轉頁面
loginApi(‘賬號’, ‘密碼’).then((res) => { if (res.data.errno === 0) { // 存儲window上 window.sessionStorage.setItem('user',res.data.data) // 跳轉路由 this.$router.push("/user").catch(err => console.log(err)); } });
router文件
let flag = sessionStorage.getItem('user') // console.log(!getToken(),next(),flag) if (!flag) { next('/login') } else{ next() }
9.打包exe,再打包命令行 加入icon,這個icon是打包后exe文件前面的圖標,如果沒有也是默認圖標
切記:--icon 要--out 之前,我試了多次都是是無效的,每次打包最好是換一個exe名稱 可能會有緩存導致一些修改失敗
打完完成后效果圖
10.exe打包完成后,接下來生成安裝程序包,下載安裝inno setup,然后新建一個文件,步驟如下:
新建文件
直接下一步
輸入打包的APP名稱 、版本號、剩下的兩個根據自己情況隨便填,然后下一步
直接下一步
第一個是選擇 你剛才在demo內打包的exe文件
第二個是選擇文件或者目錄 是exe文件統計目錄下的所有文件,選中整個目錄
然后下一步
選擇語言,下一步
選擇安裝包 輸出目錄 、安裝包名稱、安裝包的桌面圖標,下一步
直接finsh ,然后會讓你選擇保存安裝包代碼文件保存名稱及地址
在Inno編輯器看到如下代碼
默認選中安裝時創建桌面快捷圖標
這個必須是icon 圖標 ,附帶一個ico轉換的工具http://www.favicon-icon-generator.com/favicon
在運行完成后會在 你設置的輸出目錄里看到一個exe文件
這個帶圖標的exe文件 就是安裝包,點擊直接安裝
------------------整個打包過程完結-------------------
懶得截圖了,直接使用的別人的截圖,流程都一樣,就是版本不同inno setup的版本更新了