1. 提示錯誤
:-: 
> 解決:項目中main/index.js文件中 Tray的icon文件地址不對
> 原因:
:-: 
> 表示在development模式下,即開發(生產)模式下electron將靜態資源路徑改為了`/static`,導致文件找不到
> 修改辦法:去掉`if`只保留內部代碼
> icon圖片地址 `let iconPath = path.join(__static, "./icon.png");`,`var appTray = new Tray(iconPath);`
2.
:-: 
> The process cannot access the file because it is being used by another process
> 翻譯:該進程無法訪問該文件,因為它正在被另一個進程使用
> 解決:關掉正在運行的本項目應用,結束任務管理器中的應用進程,在main/index.js中添加殺死進程代碼
~~~
var?exec?=??require('child\_process').exec;
if (electronProcess) {
const pid = electronProcess.pid
exec(`TASKKILL /F /IM electron.exe`, function (err, data) {
if (err) {
console.log(err)
} else {
console.log('kill pid: ' + pid + ' success!')
startElectron()
}
})
}
~~~
3. 項目打包自定義安裝位置
> package.json修改build
~~~
"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腳本
}
...
},
~~~
:-: 




4. electron項目中main文件夾下的配置js文件
不能使用`import` 和 `export.default = ...`,
都改成 `require` 和 `module.exports = ...`
5. 項目打包最好將項目代碼使用中的進程退出,否者會報項目代碼在使用中的錯誤
6. 項目圓角和投影
main.js
```
mainWindow = new BrowserWindow({
...
transparent: true,
backgroundColor: "#00000000",
...
});
```
vue項目中
App.vue中的 `id="app"`
```
#app {
...
border-radius: 8px;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
margin: auto;
}
```
注意:
* . electrom中的窗口大小比項目顯示的窗口大小要大一些,否者不能顯示投影
* . 彈窗展示也要設置外框內邊距,`padding:{n}px`,否者彈框的半透明背景會比項目顯示的窗口大一些
7. 路徑中不要有中文
8. `NPM`下載的問題li
由于`NPM`在國內比較慢。致使`electron-V.xxxx.zip`下載失敗。這些東西若是是第一次打包的話是須要下載對應`electron`版本的支持文件。解決辦法有兩個webpack
(1)設置鏡像:在build里面加下面一段代碼git
~~~
"electronDownload": {
"mirror": "https://npm.taobao.org/mirrors/electron/"
}
~~~
(2)直接下載后放入C盤(采用的這種)github
直接去淘寶鏡像文件庫找到對應的文件并下載,放到指定的目錄下,electron的淘寶[鏡像地址](https://link.juejin.im/?target=https%3A%2F%2Fnpm.taobao.org%2Fmirrors%2Felectron%2F):[https://npm.taobao.org/mirrors/electron/](https://npm.taobao.org/mirrors/electron/)。下載完以后放到指定的文件。通常文件的地址在`C:\Users\Administrator\AppData\Local\electron\Cache`。例如我要下載8.2.3版本的`electron`,那么找到鏡像下得文件而后放到指定文件夾中。web
:-: 
?(3)`NSIS`下載問題npm
若是你要打`NSIS的`包還須要再下載`nsis-resources-xxx`等等包。經過錯誤日志咱們能夠獲得咱們要下載得版本,通常錯誤中一般會展現`github`下載地址,直接點開鏈接去下載。可是位置此次不同了。由于這是`electron-builder`的支持環境因此咱們要放在`C:\Users\Administrator\AppData\Local\electron-builder\cache\nsis\`下了。sass
通常狀況下解決這些問題的思路就是,缺什么拿什么?。服務器
:-: 
:-: 
9. 打包后顯示調試工具
:-: 
`mainWindow.webContents.openDevTools()`
- electron-vue打包不同平臺的安裝文件
- Electron+Vue開發跨平臺桌面應用
- electron-vue項目初始化process is not defined問題解決
- 出現 require is not defined 的問題
- Cannot read property 'app' of undefined
- electron-vue 隱藏頂部菜單 隱藏導航 、自定義導航
- electron程序顯示在右下角托盤
- electron與vue通信
- electron-vue修改任務欄圖標
- electron-vue文檔1
- 打包錯誤
- 使用 electron 屏幕或攝像頭錄制并保存到本地
- electron-vue創建報錯