вручную прочитать глобальную переменную.

ctron мой основной процесс - открытие BrowserWindow. BrowserWindow загружает одну HTML-страницу, а затем то же самое окно в конечном итоге загружает другую HTML-страницу.

main.js

var mainWindow;
global.mainState = {
  settings: {}
}
mainWindow = createWindow('main', {
  width: 1000,
  height: 800,
});
if (curState == 'load') {
  mainWindow.loadURL(`file://${__dirname}/interface/load.html`, {})
}
if (curState == 'login') {
  mainWindow.loadURL(`file://${__dirname}/interface/login.html`, {})
}

load.html

const remote = require('electron').remote;
var testGlobal = remote.getGlobal('mainState')
testGlobal.settings = 'test value'
testGlobal.settings.inner = 'test value2'

Когда main.js загрузит вторую страницу (login.html), будет ли глобальная переменная удалена / разыменована? В документах говорится, что если процесс рендеринга разыменовывает глобальную переменную, то эта переменная будет gc'd. Когда я пытаюсь проверить это, я получаю противоречивые результаты, и я просто хотел бы получить какое-то объяснение от кого-то более мудрого, чем я.

Ответы на вопрос(1)

Ваш ответ на вопрос