Creé el submenú en electron js e intenté cambiar el estado del submenú después de hacer clic. Pero no puedo realizar la acción.
índice.js
ipcMain.on('show-context-menu', (event) => { const template = [ { label: 'Position', submenu: [ { label: 'Bottom Right', type: 'checkbox', role: 'bottomRight', click: () => { let modifiedMenuItem = changePosition(positioner, 'bottomRight', menuItem); Menu.setApplicationMenu(Menu.buildFromTemplate(modifiedMenuItem)); //applyMenu(modifiedMenuItem); menu = Menu.buildFromTemplate(modifiedMenuItem); Menu.setApplicationMenu(menu); menu.popup(BrowserWindow.fromWebContents(event.sender)); } }, { label: 'Bottom Left', type: 'checkbox', role: 'bottomLeft', click: () => { let modifiedMenuItem = changePosition(positioner, 'bottomLeft', menuItem); Menu.setApplicationMenu(Menu.buildFromTemplate(modifiedMenuItem)); //applyMenu(modifiedMenuItem); menu = Menu.buildFromTemplate(modifiedMenuItem); Menu.setApplicationMenu(menu); menu.popup(BrowserWindow.fromWebContents(event.sender)); } } ] } ] menu = Menu.buildFromTemplate(template); Menu.setApplicationMenu(menu); menuItem = Menu.getApplicationMenu(); menu.popup(BrowserWindow.fromWebContents(event.sender)); }); let changePosition = (positioner, position, menuItem) => { let menuTemplate = [{ label: 'Position', submenu: [] }]; menuItem?.items[0]?.submenu?.items.forEach(m => { menuTemplate[0].submenu.push({ label: m.label, type: m.type, role: m.role, click: m.click, checked: m.checked }); }); positioner.move(position); return menuTemplate; }Aquí, después de hacer clic, vuelvo a mostrar el menú. Pero no está cambiando el estado marcado.
Cualquier ayuda en esto.