我是新來的在Windows上寫電子。當我創建一個menuTemplate
這顯示在我打開的所有窗口上。有沒有辦法讓我的mainWindow
上出現菜單? (不是彈出窗口創建)電子 - 僅顯示主窗口上的菜單
Index.js
const electron = require('electron');
const { app, BrowserWindow, Menu } = electron;
let mainWindow;
let addWindow;
app.on('ready',() => {
mainWindow = new BrowserWindow({});
mainWindow.loadURL(`file://${__dirname}/main.html`);
mainWindow.on('closed',() => app.quit());
const mainMenu = Menu.buildFromTemplate(menuTemplate);
Menu.setApplicationMenu(mainMenu);
});
function createAddWindow() {
addWindow = new BrowserWindow({
width: 300,
height: 200,
title: 'Add New Todo'
});
addWindow.loadURL(`file://${__dirname}/add.html`)
}
const menuTemplate = [
{
label: 'File',
submenu: [
{
label: 'New Todo' ,
click() { createAddWindow(); }
},
{
label: 'Quit',
accelerator: process.platform === 'darwin' ? 'Command+Q' : 'Ctrl+Q',
click() {
app.quit();
}
}
]
}
];
if (process.platform === 'darwin') {
menuTemplate.unshift({});
}
你可以使用'CommandOrControl + Q'或'CmdOrCtrl + Q'而不是'process.platform ==='darwin'? 'Command + Q':'Ctrl + Q''。看到[加速器](https://github.com/electron/electron/blob/master/docs/api/accelerator.md) – RoyalBingBong