vex를 활용하여 confirm dialog 띄우기

1.npm으로 vex-js 설치

$ npm install -save vex-js

2.테스트용으로 기존 File메뉴 하위로 Exit 메뉴 추가

menu.append(new MenuItem({
    label:'File', 
    submenu: [
        ...
    {
        label: "Exit",
        click: ()=>{
        
            });
        }
    }
...

3.vex import 추가
먼저 vex-js 부터 require() 이후 css를 import 수행 해야 정상 인식

var vex = require('vex-js')
import 'vex-js/dist/css/vex.css';
import 'vex-js/dist/css/vex-theme-os.css';
vex.registerPlugin(require('vex-dialog'));
vex.defaultOptions.className = 'vex-theme-os';

4. Exit Menu에 confirm dialog 추가

{
    label: "Exit",
    click: ()=>{
        vex.dialog.confirm({
            message: 'Are you want to exit eDICOM Viewer?',
            callback: function (value) {
                if (value != true) 
                    return;
                        
                remote.getCurrentWindow().close();
            }
        });
}

5.결과 화면

참고) 테스용으로 exit에 confirm 추가. 추 후 changed file save로 변경 예정