美文网首页
解决 Electron 在 mac 上复制粘贴失效

解决 Electron 在 mac 上复制粘贴失效

作者: taojy123 | 来源:发表于2018-08-27 10:05 被阅读0次

    开发时是正常的,但是用 electron-packager 或 electron-builder 打包后,就没法在应用内复制粘贴了。
    原因是在 mac 环境打包时,应用的菜单会变成空的,需要我们手动加上编辑菜单以及快捷键。
    网上有很多版本的解决方案:
    https://www.jianshu.com/p/fcee9c1ae110
    http://www.loen.wang/?p=728
    https://blog.csdn.net/gentlycare/article/details/51135950

    我就简单的总结一下,做一个最简版。

      if (process.platform === 'darwin') {
        const template = [
          {
            label: "Application",
            submenu: [
              { label: "Quit", accelerator: "Command+Q", click: function() { app.quit(); }}
            ]
          }, 
          {
            label: "Edit",
            submenu: [
              { label: "Copy", accelerator: "CmdOrCtrl+C", selector: "copy:" },
              { label: "Paste", accelerator: "CmdOrCtrl+V", selector: "paste:" },
            ]
          }
        ];
        Menu.setApplicationMenu(Menu.buildFromTemplate(template))
      } else {
        Menu.setApplicationMenu(null)
      }
    

    这段代码可以加在 main.jsfunction createWindow 中,如下图:

    相关文章

      网友评论

          本文标题:解决 Electron 在 mac 上复制粘贴失效

          本文链接:https://www.haomeiwen.com/subject/hnkziftx.html