Читая книгу об электроне, я наткнулся на следующий код.
const windows = new Set();
app.on('ready', () => {
createWindow();
});
const createWindow = exports.createWindow = () => {
let newWindow = new BrowserWindow({
show: false
});
newWindow.loadURL(url.format({
pathname: path.join(__dirname, 'index.html'),
protocol: 'file:',
slashes: true
}));
newWindow.once('ready-to-show', () => {
newWindow.show();
});
newWindow.on('closed', () => {
windows.delete(newWindow);
newWindow = null;
});
windows.add(newWindow);
return newWindow;
};
Это то, что, как мне кажется, происходит, переменная newWindow
является локальной для функции.closed event
- последнее событие, которое должно произойти.Таким образом, когда closed event
закончен, функция завершается.это означает, что переменная newWindow
больше не существует.
Исходя из моего нынешнего понимания, я не вижу смысла устанавливать newWindow
в ноль непосредственно перед завершением функции.
Есть лиесть причина для этого?
newWindow.on('closed', () => {
windows.delete(newWindow);
newWindow = null;
});