electron 客户端完成,打包给测试,测试反应说,程序不能复制和粘贴。
愣了1分钟,然后检查了自己的项目,发现不存在这个问题啊,是忽悠我吗?最后的解决方案,是测试来我这里看,我去测试那里看。
发现他们那边的版本真的不能复制,原来是因为我本地是开发环境,他们是打包完成后的版本。
这里吐槽一下,electron坑还蛮多的,但也不能掩盖他的优秀。跨平台客户端开发,还是很棒的
- 关于没有复制粘贴
mac系统下快捷键问题
Mac系统下,默认的快捷键Redo、Undo、复制粘贴等不能使用,阅读了electron发现需要通过创建应用菜单的方式做一个映射。
const Menu = require("menu");
// Create the Application's main menu
let template = [{
label: "Application",
submenu: [
{ label: "About Application", selector: "orderFrontStandardAboutPanel:" },
{ type: "separator" },
{ label: "Quit", accelerator: "Command+Q", click: function() { app.quit(); }}
]}, {
label: keysBinding["Edit"],
submenu: [
{ label: keysBinding["Undo"], accelerator: "CmdOrCtrl+Z", selector: "undo:" },
{ label: keysBinding["Redo"], accelerator: "Shift+CmdOrCtrl+Z", selector: "redo:" },
{ type: "separator" },
{ label: keysBinding["Cut"], accelerator: "CmdOrCtrl+X", selector: "cut:" },
{ label: keysBinding["Copy"], accelerator: "CmdOrCtrl+C", selector: "copy:" },
{ label: keysBinding["Paste"], accelerator: "CmdOrCtrl+V", selector: "paste:" },
{ label: keysBinding["Select All"], accelerator: "CmdOrCtrl+A", selector: "selectAll:" }
]}
];
//注册菜单
Menu.setApplicationMenu(Menu.buildFromTemplate(template));