gpt4 book ai didi

javascript - Electron 上的 "Never ask again"功能dialog.showMessageBox 方法

转载 作者:行者123 更新时间:2023-12-01 03:26:02 29 4
gpt4 key购买 nike

我有一个正常工作的dialog.showMessageBox,并且可以按照我的指示执行操作。

electron.dialog.showMessageBox({
type: 'info',
buttons: ['Yes', 'No'],
message: 'Are you sure?',
}, resp => {
if (resp === 0) {
// User selected 'Yes'
foo.bar();
}
});

但是每次调用此函数时都要回答很烦人,我想插入这样的“不再问我”。

electron.dialog.showMessageBox({
type: 'info',
buttons: ['Yes', 'No'],
message: 'Are you sure?',
checkboxLabel: 'Never ask me again',
checkboxChecked: false
}, resp => {
if (resp === 0) {
// User selected 'Yes'
foo.bar();
}
});

Dialog box

文档说 bool 值 checkboxChecked 可以在回调函数中使用,但我想知道如何将其设为全局,以便不再提出问题。

最佳答案

好的,这就是我所做的:

const settings = require('electron-settings');

settings.set('neverAskMeAgain', {
state: false
});

if (!settings.get('neverAskMeAgain.state')) {
electron.dialog.showMessageBox({
type: 'info',
buttons: ['Yes', 'No'],
message: 'Are you sure?',
checkboxLabel: 'Never ask me again',
checkboxChecked: false
}, (resp, checkboxChecked) => {
if (resp === 0) {
foo.bar();
settings.set('neverAskMeAgain.state', checkboxChecked);
}
});
} else if (settings.get('neverAskMeAgain.state')) {
foo.bar();
}
} else {
foo.bar();
}

运行npm install && npm start时,它就像应用程序实例中的魅力一样,但是当我退出它并重新启动它时,该对话框会再次显示...

关于javascript - Electron 上的 "Never ask again"功能dialog.showMessageBox 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44822621/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com