Время блокировки основного потока Webvitals

          function init() {
   
    (function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.async = true;
  js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.9&appId=1111";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'))
    
    }
    window.onload = init;

Несмотря на то, что я вызываю плагин комментариев facebook при загрузке, я все равно получаю оценку -ve на web-vitals как часть времени блокировки основного потока.

Пожалуйста помоги

1 ответ

Вы должны использовать Web Worker для загрузки facebook_comments плагин.

Веб-воркеры - это простое средство для веб-содержимого для запуска скриптов в фоновых потоках.

Вот пример:

facebook_comments.js:

      function init() {  
      (function(d, s, id) {
      var js, fjs = d.getElementsByTagName(s)[0];
      if (d.getElementById(id)) return;
      js = d.createElement(s); js.id = id;
      js.async = true;
      js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.9&appId=1111";
      fjs.parentNode.insertBefore(js, fjs);
    }(document, 'script', 'facebook-jssdk'))    
}

а затем загрузите его через веб-воркер:

      new Worker('facebook_comments.js');

Это должно загрузить скрипт в фоновом потоке, что приведет к оптимизированному TBT.

Другие вопросы по тегам