电子webContents.undo()在做什么?

时间:2017-11-28 12:06:32

标签: javascript google-chrome electron undo-redo

我想构建一个使用撤消重做功能的基于电子的应用程序。现在可以在菜单中放置undo / redo条目,并且电子中已存在相应的角色。 role: undo + role: redo。见here

因此,如果我点击“撤消' -MenuItem”,我可能会发现webContents.undo()将会被调用。

我现在的问题是,调用此撤消时会发生什么?我可以以某种方式注册一个监听器并自己处理撤消?或者最好不要使用'撤消' -role但是定义自定义菜单条目并自己处理所有内容?

也许有一些关于电子铬浏览器如何处理这些撤消事件的规范,以及可以捕获它并定义我自己应该在撤消/重做上执行的操作。

1 个答案:

答案 0 :(得分:1)

我认为您应该定义自定义菜单条目并自行处理。

我不认为你可以注册一个监听器并在那里处理它,因为webContents文档中没有事件。

菜单项将是这样的:

{
    label:       'Undo',
    accelerator: 'CmdOrCtrl+Z',
    click:       function (menuItem, focusedWin) {
        // Undo.
        focusedWin.webContents.undo();

        // Run some custom code.
    }
}