Работает ли обратный вызов requestIdleCallback на фоновой странице расширений Chrome?

#javascript #google-chrome-extension

#javascript #google-chrome-extension

Вопрос:

Я не могу найти никакой документации по этому вопросу так или иначе. Функция window.requestIdleCallback действительно существует на фоновой странице расширения Chrome. Но когда я запускаю

 window.requestIdleCallback(() => {
  console.log("XXX idle");
});
  

Обратный вызов, похоже, никогда не выполняется. Это предполагаемое поведение или есть что-то, что может привести к тому, что обратный вызов здесь никогда не будет выполняться?

Немного больше информации: в манифесте действительно есть {"persistent": true} set. И window.requestIdleCallback функция действительно существует, просто, похоже, она ничего не делает.

Комментарии:

1. Если ваша фоновая страница является страницей событий («постоянная»: false), она не будет работать, потому что страница выгрузится. Не уверен, что это сработает, если вы сделаете его постоянным.

2. Эта функция, как и rAF, основана на фреймах, поэтому она не работает в не отображаемом контексте, таком как фоновая страница.

3. Я не уверен, есть ли requestIdleCallback функция в Chrome, поскольку я не могу найти ее в документации Chrome API , вместо этого я нашел этого , который использует эту функцию. Вы пытались это проверить?