Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从渲染器进程(浏览器窗口)添加菜单项_Javascript_Electron - Fatal编程技术网

Javascript 如何从渲染器进程(浏览器窗口)添加菜单项

Javascript 如何从渲染器进程(浏览器窗口)添加菜单项,javascript,electron,Javascript,Electron,我试着用遥控器来实现这一点,但不明白它是如何工作的=( 我需要做的是: 1) 对服务器的ajax调用(ok) 2) 服务器响应为“issue123”(正常) 3) 在OS X标准菜单栏中添加“issue123”(如何?) 我创建menuItem-Issues,它在加载应用程序时正常工作,但如何将“issue123”推送到该菜单?在菜单中添加或删除菜单项后,需要再次调用菜单.setApplicationMenu()或浏览器窗口.setMenu(),以重建本机菜单。但是,如果修改菜单项上的已启用、可

我试着用遥控器来实现这一点,但不明白它是如何工作的=(

我需要做的是: 1) 对服务器的ajax调用(ok) 2) 服务器响应为“issue123”(正常) 3) 在OS X标准菜单栏中添加“issue123”(如何?)


我创建menuItem-Issues,它在加载应用程序时正常工作,但如何将“issue123”推送到该菜单?

在菜单中添加或删除菜单项后,需要再次调用
菜单.setApplicationMenu()
浏览器窗口.setMenu()
,以重建本机菜单。但是,如果修改菜单项上的
已启用
可见
、或
已选中
属性,则无需再次调用上述方法

资料来源:


    • 哦。。。第一次不容易;)

      例如:

      const trackerMenu = Menu.buildFromTemplate(template);
      Menu.setApplicationMenu(trackerMenu);
      
      const issuesMenu = trackerMenu.items[4]; //save your submenu item
      
      success: function(data) { //my ajax callback
      
         let menuItem = new MenuItem({
           label: data,
           click: function(item, focusedWindow) {
             console.log(item)
           }
         })
      
         issuesMenu.submenu.insert(0, menuItem);
         Menu.setApplicationMenu(trackerMenu);
      }