[英]Facebook “error 2” with Phonegap Build Facebook Connect Plugin on ios
[英]phonegap-facebook-plugin on WebApp, JS error
我正在構建一個基於離子的移動應用程序,我正在使用phonegap-facebook-plugin登錄facebook。 我已經設法在android和ios上安裝插件,它的工作原理。 但是,在嘗試將其用於webapp時,我正在努力使其成功。 我將概述我的設置然后概述錯誤:
的login.html
<div id="fb-root"></div>
<div class="event listening button" ng-click="login();">Login with Facebook</div>
app.js
angular.module('app', ['ionic', 'app.controllers', 'app.services'])
.config(function($stateProvider, $urlRouterProvider) {
$stateProvider
//First page
.state('login', {
url: '/login',
templateUrl: 'templates/login.html',
controller: 'LoginCtrl'
});
controllers.js
angular.module('app.controllers', [])
.controller('LoginCtrl', function($scope){
$scope.login = function () {
if (!window.cordova) {
var appId = prompt("Enter FB Application ID", "");
facebookConnectPlugin.browserInit(appId);
}
facebookConnectPlugin.login( ["email"],
function (res) {
//if successfull
if (JSON.stringify(response['authResponse']['accessToken']) != null){
alert("True");
$location.path('/home').replace();
}
else{
//redirect back
}
},
function (res) {
//if error
alert(JSON.stringify(response))
}
);
}
});
在facebookConnectPlugin.js中 ,我有一行代碼獲取錯誤“ Uncaught TypeError:無法讀取屬性'appendChild'為null ”,特別是第174行 :
document.getElementById('fb-root').appendChild(e);
我知道這必須歸功於DOM,但似乎無法超越它。
任何幫助都會很棒,謝謝:)
在index.html中,嘗試將所有腳本標記放在最后(就在關閉正文標記之前)。 這應該可以解決問題。
也許這個答案為時已晚,但對於那些有相同問題的人來說。 我在離子框架中面臨這個問題,將以下內容添加到平台(ios,android,瀏覽器),問題為我解決了問題。
<script>
window.fbAsyncInit = function() {
FB.init({
appId : 'your_app_id',
xfbml : true,
version : 'v2.8'
});
FB.AppEvents.logPageView();
};
(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/sdk.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
希望這可以幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.