1

投稿を Facebook に共有したいので、コードを書きました。しかし、ボタンをクリックすると、FB.getLoginStatus は初めて response.status に「不明」と応答しますが、もう一度クリックすると「接続済み」と応答します。ここに私のコードがあります:

$("#fb_share").on("click",function(){
  var poi_id    = $("#fb_share").attr('data-id');
  FB.getLoginStatus(function(statusResp) {
    console.log(statusResp);
    if (statusResp.status === 'connected') {
        FB.api('/me?fields=email', function(response) {
            if(response.email){
                sendEventInvite(statusResp,response,poi_id);
            }else{
                FBLoginFirst(poi_id,statusResp,"detail");
            }
        });

    }else{
console.log("fb_permission_scope---"+fb_permission_scope);
        FBLoginFirst();
    }
});
});

これは私がconsole.logで得るものです

Object { status="unknown",  authResponse=null}

これは私が2回目のクリックで得たものです

Object { status="connected",  authResponse={...}}`
4

1 に答える 1

0

if ステートメントに余分な等号 (=) があります。何かをブール値と比較する場合、3 つの等号 (===) は正しい演算子です。

これを試してください:

$("#fb_share").on("click",function(){
  var poi_id    = $("#fb_share").attr('data-id');
  FB.getLoginStatus(function(statusResp) {
    console.log(statusResp);
    if (statusResp.status == 'connected') {
        FB.api('/me?fields=email', function(response) {
            if(response.email){
                sendEventInvite(statusResp,response,poi_id);
            }else{
                FBLoginFirst(poi_id,statusResp,"detail");
            }
        });

    }else{
console.log("fb_permission_scope---"+fb_permission_scope);
        FBLoginFirst();
    }
});
});
于 2016-03-04T15:08:37.903 に答える