首页 > 解决方案 > Electron showMessageBox 不阻塞进程

问题描述

来自以下文档dialog.showMessageBox()

... 显示一个消息框,它会阻塞进程,直到消息框关闭。

我遇到的问题如下,我想在消息框关闭后修改一个值。这是我的代码

...
  const win = BrowserWindow.getAllWindows()[0];
  const options = {
    buttons: ['Ok'],
    title: ' ',
    message: 'Now listening on ' + adress + ":" + port,
  };
  foo = true;
  const response = dialog.showMessageBox(win, options);
  foo = false;
  console.log("hello");

经过调试,我看到 foo 正在被修改,尽管对话框没有关闭。我也尝试用回调来修改它,如下:

lock = true;
const response = dialog.showMessageBox(win, options, () => {
    lock = false;
);

它也没有工作。有人可以解释为什么这两种方法都不起作用吗?以及如何修复它以使其按预期运行。

标签: javascriptnode.jselectron

解决方案


推荐阅读