FB Like按钮仅显示一次 - 在我的AngularJS视图的第一次加载时

 手机用户2502873453_987 发布于 2023-02-13 12:51

我正在尝试将FB like按钮放在我在Angular JS上构建的单页网站上.类似按钮必须显示在控制器显示的视图(不同于index.html)上.但是类似按钮仅在我第一次加载特定视图时出现.如果我在访问另一个视图后回来,则按钮不会显示.下面是在控制器中为视图加载FB SDK的代码 -

(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 ="// connect.facebook.net/en_US/all.js#xfbml=1"; fjs.parentNode.insertBefore(js,fjs);}(document,'script','facebook-jssdk "));

index.html具有以下代码 -

myView.html

布局= "标准" 数据动作= "喜欢" 的数据显示-面= "假" DATA-份额="真">

我尝试了各种方法,比如使用FB.XFBML.Parse(),删除FB sdk的脚本标签并在每次加载时添加它(希望它能像第一次一样工作),尝试使用指令,放置各种观点中的fb-root div现在我很无能为力:|

我觉得问题是在重新访问视图时加载或刷新SDK但我不确定.

将会感谢任何有助于我前进的输入,如果您需要更多信息,请告诉我.

谢谢,山姆.

2 个回答
  • 我相信我找到了解决方案.

    在小部件脚本的开头设置FB = null; 并删除"if(d.getElementById(id))return;"

    它应该如下所示:

    FB = null;
    (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 = "//connect.facebook.net/pt_BR/all.js#xfbml=1";
        fjs.parentNode.insertBefore(js, fjs);
    }(document, 'script', 'facebook-jssdk'));
    

    2023-02-13 12:53 回答
  • user2912405给出的接受答案是完美的.我只想添加一下,如果您使用的是AngularJS

    你应该使用:

    $scope.$on('$viewContentLoaded', function() {
        (function(d, s, id) {
            FB = null;
            var js, fjs = d.getElementsByTagName(s)[0];
            //if (d.getElementById(id)) return;
            js = d.createElement(s); js.id = id;
            js.src = "//connect.facebook.net/en_US/all.js#xfbml=1&appId=204269043065238";
            fjs.parentNode.insertBefore(js, fjs);
          }(document, 'script', 'facebook-jssdk'));
    });
    

    每次我们更改视图时都要重新加载按钮,例如当我们关注链接时

    2023-02-13 12:53 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有