我正在创建一个视觉上与Alfred类似的应用来管理和搜索我的书签。它工作得很好,但是当我进行搜索并打开书签时,我立即隐藏了应用程序,当我再次调用它时,它返回默认模式进行可视化闪存。在隐藏应用程序之前会立即触发重置为默认值。
我隐藏了这样的应用程序:remote.app.hide()
我在我的组件中的win.hide
添加了一个监听器来重置vue。
它可以工作,但在应用程序再次显示后处理重置。
我不知道如何隐藏应用程序或在重新加载vue后立即显示它。
如果你有任何线索,那就太棒了。
我在Github上创建了一个示例项目,你可以克隆并测试这个问题。
我目前正在研究macOS。
谢谢。
答案 0 :(得分:2)
我找到了一种简单的方法,你不能依赖window.on('hide')事件。
所以在你的快捷方式注册中,我让你的应用程序发出一个自定义事件,你的Vue.js会在隐藏应用程序之前监听重置你的输入:
main.js
const retShow = globalShortcut.register('CmdOrCtrl+Alt+V', () => {
if (!win.isVisible()) {
win.show()
} else {
app.emit('hide-window'); // Let the window hide the app
}
})
在你的Vue.js应用程序中,在创建的钩子中:
app.js
app.on('hide-window', function () {
vm.reset();
setTimeout(app.hide, 10);
});
这是我的拉取请求:https://github.com/Cronos87/electron-vue-flash-issue/pull/1/files