我试图在我的离子应用程序中开发facebook登录。我想使用ngCordova Facebook插件,我已按照那里的说明操作,但收到错误:facebook connect plugin is not defined
。
我该怎么办?我已按照Android的说明操作,我的应用程序是基于离子的。
答案 0 :(得分:1)
您可以使用此详细文章 - OAuth with Ionic and ngCordova
或者添加指向您正在使用的文档的链接并指定停止的步骤?
你有没有关注这个guide?
编辑:好的,我查看了我的源代码。我没有使用任何SDK依赖的插件。 我正在使用轻量级库OpenFB。我接着是自述文件中的步骤,并在我的离子应用程序中登录了fb。
EDIT2: BTW,我尝试使用ngCordova包装器(我添加了它的第一个版本的答案)相同的结果。
我想你错过了什么..可能你没有添加到facebookConnectPlugin.js的链接?
我的index.html页面:
<script src="js/facebookConnectPlugin.js"></script>
<script src="js/ng-cordova.js"></script>
<!-- cordova script (this will be a 404 during development) -->
<script src="cordova.js"></script>
<!-- your app's js -->
<script src="js/app.js"></script>
<script src="js/controllers.js"></script>
<script src="js/services.js"></script>
控制器:
.controller('DashCtrl', function ($scope, $cordovaFacebook) {
$scope.getLoginStatus = function () {
$cordovaFacebook.getLoginStatus().then(function (status) {
$scope.status = status;
}, function (error) {
$scope.status = error;
})
};
$scope.login = function () {
$cordovaFacebook.login(["public_profile"]).then(function (success) {
$scope.loginInfo = success;
}, function (error) {
$scope.error = error;
alert(error);
})
};
$scope.logout = function () {
$cordovaFacebook.logout().then(function (success) {
console.log(success);
}, function (error) {
$scope.error = error;
alert(error);
})
};
$scope.getMe = function () {
$scope.me = ["refreshing..."];
$cordovaFacebook.api("me", null).then(function (success) {
$scope.me = success;
}, function (error) {
$scope.error = error;
})
};
})
查看:
<button class="button button-block button-positive" ng-click="login()">Login</button>
<h5>Login info</h5>
<div ng-repeat="info in loginInfo">{{info}}</div>
<div class="card">
<div class="item item-divider">Login Info</div>
<div class="item" ng-repeat="info in loginInfo">{{info}}</div>
</div>
<button class="button button-block button-dark" ng-click="getLoginStatus()">Check Login Status</button>
<div class="card">
<div class="item item-divider">Login Status</div>
<div class="item" ng-repeat="info in status">{{info}}</div>
</div>
<button class="button button-block button-energized" ng-click="getMe()">API - get Me</button>
<h5>Api Me info</h5>
<div class="card">
<div class="item item-divider">Api Me info</div>
<div class="item" ng-repeat="info in me">{{info}}</div>
</div>
<button class="button button-block button-assertive" ng-click="logout()">Logout</button>
如果它没有帮助 - 明天我会将我的来源放在github上。