1. 在原先已有的Vue項目里面,打開終端執行vue add electron-builder ;
2. 選擇合適的版本安裝好這個插件,執行npm run electron:serve ;
3. 如果頁面沒有什么錯誤,就會彈出一個vue的應用窗口,說明准備工作已經完成;
4. 如果需要修改桌面應用界面或窗口之類的一些配置,則需要在package.json文件最后加上“build”鍵並將里面的各個參數都填進去即可,如同下方所示,關注最后的“build”:
{
"name": "my-project",
"version": "0.1.0",
"private": true,
"scripts": {
"serve": "vue-cli-service serve",
"build": "vue-cli-service build",
"lint": "vue-cli-service lint",
"electron:build": "vue-cli-service electron:build",
"electron:serve": "vue-cli-service electron:serve",
"postinstall": "electron-builder install-app-deps",
"postuninstall": "electron-builder install-app-deps"
},
"main": "background.js",
"dependencies": {
"core-js": "^3.6.5",
"electron": "^9.0.4",
"electron-builder": "^22.7.0",
"nedb": "^1.8.0",
"nedb-promises": "^4.0.3",
"vue": "^2.6.11"
},
"devDependencies": {
"@vue/cli-plugin-babel": "~4.4.0",
"@vue/cli-plugin-eslint": "~4.4.0",
"@vue/cli-service": "~4.4.0",
"babel-eslint": "^10.1.0",
"electron": "^9.0.0",
"eslint": "^6.7.2",
"eslint-plugin-vue": "^6.2.2",
"vue-cli-plugin-electron-builder": "~2.0.0-rc.2",
"vue-template-compiler": "^2.6.11"
},
"eslintConfig": {
"root": true,
"env": {
"node": true
},
"extends": [
"plugin:vue/essential",
"eslint:recommended"
],
"parserOptions": {
"parser": "babel-eslint"
},
"rules": {}
},
"browserslist": [
"> 1%",
"last 2 versions",
"not dead"
],
"build": {
"productName": "ElectronVue",
"appId": "alexander.ezharjan.electron-vue",
"dmg": {
"contents": [{
"x": 410,
"y": 150,
"type": "link",
"path": "/Applications"
},
{
"x": 130,
"y": 150,
"type": "file"
}
]
},
"directories": {
"output": "build"
},
"openDevTools": true,
"files": [
"dist/electron",
"node_modules/",
"package.json"
],
"mac": {
"icon": "build/icons/icon.icns"
},
"win": {
"icon": "build/icons/icon.ico"
},
"linux": {
"icon": "build/icons"
}
}
}
5. 網上找到的所謂的“完整配置表”:
"build": {
"productName":"xxxx",//項目名 這也是生成的exe文件的前綴名
"appId": "com.leon.xxxxx",//包名
"copyright":"xxxx",//版權 信息
"directories": { // 輸出文件夾
"output": "build"
},
"nsis": {
"oneClick": false, // 是否一鍵安裝
"allowElevation": true, // 允許請求提升。 如果為false,則用戶必須使用提升的權限重新啟動安裝程序。
"allowToChangeInstallationDirectory": true, // 允許修改安裝目錄
"installerIcon": "./build/icons/aaa.ico",// 安裝圖標
"uninstallerIcon": "./build/icons/bbb.ico",//卸載圖標
"installerHeaderIcon": "./build/icons/aaa.ico", // 安裝時頭部圖標
"createDesktopShortcut": true, // 創建桌面圖標
"createStartMenuShortcut": true,// 創建開始菜單圖標
"shortcutName": "xxxx", // 圖標名稱
"include": "build/script/installer.nsh", // 包含的自定義nsis腳本
},
"publish": [
{
"provider": "generic", // 服務器提供商 也可以是GitHub等等
"url": "http://xxxxx/" // 服務器地址
}
],
"files": [
"dist/electron/**/*"
],
"dmg": {
"contents": [
{
"x": 410,
"y": 150,
"type": "link",
"path": "/Applications"
},
{
"x": 130,
"y": 150,
"type": "file"
}
]
},
"mac": {
"icon": "build/icons/icon.icns"
},
"win": {
"icon": "build/icons/aims.ico",
"target": [
{
"target": "nsis",
"arch": [
"ia32"
]
}
]
},
"linux": {
"icon": "build/icons"
}
}
作者:艾孜爾江·艾爾斯蘭