2016-03-23 21 views
1

Bir blog gönder sayfasında FB yorumları ve FB paylaş düğmesi var. FB yorumlarım, blog gönderim sayfama ilk geldiğimde nadiren yüklenir. Sayfayı yenilediğimde, beş şeyden biri gerçekleşir: 1) sayfa yorumlar olmadan yüklenir (çoğu zaman); 2) sayfa yorumlar ile yüklenir; 3) FB tanımlı değil görünür; ve bir süre sonra 4) init geçerli bir versiyonla çağırılmaz. Bazen iki kez hızlı bir şekilde yenilenirse, sayfa hiç yenilenmez ve yalnızca boş bir sayfa döndürür. facebook comments plugin showing only after refreshFacebook yorumları Angular Fullstack ile tutarlı bir şekilde yüklenmiyor

ben turbolinks ne bilmiyorum ama RoR ile ilgili bir şey olduğunu düşünüyorum ve şu: Hemen hemen tüm dahil olmak üzere bu konuşma ile ilgili yığın taşması üzerine mesajların ben baktım bu çözüm arayışında Açısal Fullstack projesi.

angular.element(document).ready(function() { 
     FB.XFBML.parse(); 
    }); 

Bu çözüm benim FB payı düğmesi olmadan gelip yapar: my comments.controller Açık

<div class="fb-comments" data-href={{webAddress}} data-width="100%" data-numposts="10"></div> 

: my comments.html Açık

<body ng-app="theApp"> 
    <div id="fb-root"></div> 
    <script> 

     window.fbAsyncInit = function() { 
      FB.init({ 
      appId  : 'MyApp', 
      xfbml  : true, 
      version : 'v2.5' 
      }); 
     }; 

     (function(d, s, id){ 
      var js, fjs = d.getElementsByTagName(s)[0]; 
      if (d.getElementById(id)) {return;} 
      js = d.createElement(s); js.id = id; 
      js.src = "https://connect.facebook.net/en_US/sdk.js"; 
      fjs.parentNode.insertBefore(js, fjs); 
     }(document, 'script', 'facebook-jssdk')); 
    </script> 

: my index.html olarak Yenile (en son sayım) ama ek bir yenilemeden sonra yorumlarım olmadan görünmeme neden oluyor.

cevap

1

Birkaç denemeden sonra, ilk sayfa yüküne ulaşmak için yorumları aldım. Başka bir sayfaya gidersek (sosyal medyamızda olduğu gibi) hızla geri adım atıp "FB tanımlı değil" yazıyor. Daha iyi bir cevap bırakan herkes için bonus puanları.

Benim index.html:

<body ng-app="theApp"> 
    <div id="fb-root"></div> 
    <script> 

    window.fbAsyncInit = function() { 
     FB.init({ 
     appId  : 'MyApp', 
     xfbml  : false, //this was true before, 
     version : 'v2.5' 
     }); 
    }; 

    (function(d, s, id){ 
     var js, fjs = d.getElementsByTagName(s)[0]; 
     if (d.getElementById(id)) {return;} 
     js = d.createElement(s); js.id = id; 
     js.src = "https://connect.facebook.net/en_US/sdk.js"; 
     fjs.parentNode.insertBefore(js, fjs); 
    }(document, 'script', 'facebook-jssdk')); 
</script> 

Benim comments.html:

<script> 
    FB.XFBML.parse(); 
</script> 
<div class="fb-comments" data-href={{webAddress}} data-width="100%" data-numposts="10"></div> 

Benim comments.controller.js İşte İlk kez yüklemede sayfasını var bulundu kodudur :

angular.element(document).ready(function() { 
     FB.XFBML.parse(); 
    }); 

sevindim o comments.html ve ilet) FB.XFBML.parse fazlalığı (verilen 'çalışır' ancak ents.controller.js ve bir başka sayfaya gittikten sonra hızlı bir şekilde geri döndüğünüzde sayfanın çökmesi gerçeği kendimi tatminsiz buluyorum. Birisinin daha iyi bir cevabı varsa, bunu duymak isterim.