🚪 Entry Point Of Electron App
This commit is contained in:
		
							
								
								
									
										78
									
								
								main.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										78
									
								
								main.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,78 @@
 | 
			
		||||
// Modules to control application life and create native browser window
 | 
			
		||||
const { app, BrowserWindow, dialog } = require('electron');
 | 
			
		||||
const path = require('path');
 | 
			
		||||
const serve = require('electron-serve');
 | 
			
		||||
const loadURL = serve({ directory: 'public' });
 | 
			
		||||
 | 
			
		||||
// Keep a global reference of the window object, if you don't, the window will
 | 
			
		||||
// be closed automatically when the JavaScript object is garbage collected.
 | 
			
		||||
let mainWindow;
 | 
			
		||||
 | 
			
		||||
function isDev() {
 | 
			
		||||
    return !app.isPackaged;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function createWindow() {
 | 
			
		||||
    // Create the browser window.
 | 
			
		||||
    mainWindow = new BrowserWindow({
 | 
			
		||||
        width: 800,
 | 
			
		||||
        height: 600,
 | 
			
		||||
        webPreferences: {
 | 
			
		||||
            nodeIntegration: true
 | 
			
		||||
        },
 | 
			
		||||
        // Use this in development mode.
 | 
			
		||||
        icon: isDev() ? path.join(process.cwd(), 'public/favicon.png') : path.join(__dirname, 'public/favicon.png'),
 | 
			
		||||
        // Use this in production mode.
 | 
			
		||||
        // icon: path.join(__dirname, 'public/icons/icon-512x512.png'),
 | 
			
		||||
        show: false
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    // This block of code is intended for development purpose only.
 | 
			
		||||
    // Delete this entire block of code when you are ready to package the application.
 | 
			
		||||
    if (isDev()) {
 | 
			
		||||
        mainWindow.loadURL('http://localhost:5000/');
 | 
			
		||||
    } else {
 | 
			
		||||
        loadURL(mainWindow);
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    // Uncomment the following line of code when app is ready to be packaged.
 | 
			
		||||
    // loadURL(mainWindow);
 | 
			
		||||
 | 
			
		||||
    // Open the DevTools and also disable Electron Security Warning.
 | 
			
		||||
    // process.env['ELECTRON_DISABLE_SECURITY_WARNINGS'] = true;
 | 
			
		||||
    // mainWindow.webContents.openDevTools();
 | 
			
		||||
 | 
			
		||||
    // Emitted when the window is closed.
 | 
			
		||||
    mainWindow.on('closed', function () {
 | 
			
		||||
        // Dereference the window object, usually you would store windows
 | 
			
		||||
        // in an array if your app supports multi windows, this is the time
 | 
			
		||||
        // when you should delete the corresponding element.
 | 
			
		||||
        mainWindow = null
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    // Emitted when the window is ready to be shown
 | 
			
		||||
    // This helps in showing the window gracefully.
 | 
			
		||||
    mainWindow.once('ready-to-show', () => {
 | 
			
		||||
        mainWindow.show()
 | 
			
		||||
    });
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// This method will be called when Electron has finished
 | 
			
		||||
// initialization and is ready to create browser windows.
 | 
			
		||||
// Some APIs can only be used after this event occurs.
 | 
			
		||||
app.on('ready', createWindow);
 | 
			
		||||
 | 
			
		||||
// Quit when all windows are closed.
 | 
			
		||||
app.on('window-all-closed', function () {
 | 
			
		||||
    // On macOS it is common for applications and their menu bar
 | 
			
		||||
    // to stay active until the user quits explicitly with Cmd + Q
 | 
			
		||||
    if (process.platform !== 'darwin') app.quit()
 | 
			
		||||
});
 | 
			
		||||
 | 
			
		||||
app.on('activate', function () {
 | 
			
		||||
    // On macOS it's common to re-create a window in the app when the
 | 
			
		||||
    // dock icon is clicked and there are no other windows open.
 | 
			
		||||
    if (mainWindow === null) createWindow()
 | 
			
		||||
});
 | 
			
		||||
// In this file you can include the rest of your app's specific main process
 | 
			
		||||
// code. You can also put them in separate files and require them here.
 | 
			
		||||
		Reference in New Issue
	
	Block a user