1.報(bào)錯(cuò): 'cannot use import statement outside a module'
以上錯(cuò)誤來(lái)看node不支持ES6的import寫(xiě)法盒使,所以目的是想如何將ES6轉(zhuǎn)換成ES5, 我們只需執(zhí)行下圖的 命令2而非命令1崩掘,vue-cli-serve 腳手架會(huì)提前編譯ES6
2. Tray配置的托盤(pán)圖標(biāo)不顯示問(wèn)題
let iconPath = path.join(__static, 'images/logo.png');
appTray = new Tray(iconPath);
問(wèn)題描述:開(kāi)發(fā)環(huán)境圖標(biāo)正常,打包出來(lái)的托盤(pán)圖標(biāo)不顯示
問(wèn)題分析:說(shuō)明打包出來(lái)的圖標(biāo)未找到路徑少办,因此__static是關(guān)鍵苞慢,具體它指向哪個(gè)文件夾?
問(wèn)題解決:從上圖可以看出__static始終指向public文件夾英妓,因此我們可以把圖標(biāo)放在根目錄public文件夾下即可
3. 報(bào)錯(cuò):'Object has been destroyed'
問(wèn)題描述:點(diǎn)擊任務(wù)欄下關(guān)閉窗口進(jìn)行窗口隱藏挽放,嘗試了以下兩種方式绍赛,報(bào)錯(cuò)誤'Object has been destroyed'
//錯(cuò)誤調(diào)用
win.on('closed', () => {
win.hide();
});
app.on('window-all-closed', (e) => {
if (process.platform !== 'darwin') {
win.hide();
}
});
問(wèn)題分析:在closed和window-all-closed事件中,此時(shí)窗口已經(jīng)關(guān)閉(win方法已經(jīng)被銷(xiāo)毀)無(wú)法再找到win.hide()方法
問(wèn)題解決:將win.hide()放在close事件當(dāng)中
win.on("close", (event) => {
event.preventDefault();//阻止默認(rèn)關(guān)閉事件
win.hide(); //隱藏窗口
});
win.on("closed", () => {
win= null;//移除相應(yīng)窗口的引用對(duì)象辑畦,避免再次使用它.
});