У меня есть setInterval, который создается внутри метода, называемого форма рендерера / пользовательский интерфейс. Этот setInterval выполняется через 5 секунд и работает хорошо. Проблема в том, что когда приложение переходит на страницу входа в okta, что означает, что оно загружает ab c .okta.com, функция setInterval больше не запускается, когда приложение находится на странице входа в okta. Мне нужно запустить этот setInterval, который, по сути, следит за тем, чтобы пользователь слишком долго находился на странице входа в okta, и перенаправляет пользователя на другой URL. Сценарий с этим методом, создающий setInterval, остается доступным в исходном коде, хотя и в инструментах разработчика.
const { BrowserWindow } = require('electron').remote
export const oktaMonitor = () => {
setInterval(() => {
if (
abc !== '' &&
abc !== def
) {
const browserWindow = BrowserWindow.getFocusedWindow()
if (browserWindow) {
browserWindow.loadURL('https://abc.something.com/login')
}
}
}, 1000 * 5)
}
Имеет ли это какое-то отношение к тому факту, что метод вызывается со стороны пользовательского интерфейса / средства визуализации и загрузка чего-то еще в рендерер очищает setIntervals. Хотя технически это выглядит очень странно, как setInterval, созданный в побочном событии хрома l oop, может быть очищен чем-то, что происходит на стороне рендерера или пользовательского интерфейса.