Tribe
November 28, 2015, 9:45am
#1
I’ve followed this to a tee - https://ionicthemes.com/tutorials/about/native-facebook-login-with-ionic-framework
When running ionic serve --lab
(or on device via simulator or an actual device build) I’m getting the following errors.
On start:
Uncaught ReferenceError: cordova is not defined
That’s coming from:
/*
* @author Ally Ogilvie
* @copyright Wizcorp Inc. [ Incorporated Wizards ] 2014
* @file - facebookConnectPlugin.js
* @about - JavaScript interface for PhoneGap bridge to Facebook Connect SDK
*
*
*/
if (cordova.platformId == "browser") {
When I click on the Facebook login button, nothing happens (both in browser and on device) and I’m getting the error:
TypeError: Cannot read property ‘getLoginStatus’ of undefined
at Scope.$scope.facebookSignIn (http://10.1.1.4:8100/js/controllers.js:63:28 )
Which is: facebookConnectPlugin.getLoginStatus
I had it all working 2 days ago and now I’m unsure what’s happened.
Any assistance or ideas would be very much appreciated.
Thank you!
on browser the native compoments are not availble --> you need to build your app to get this work.
Maybe the plugin is not added correctly.
run “ionic state reset” - to reinitialize your project (platforms and plugins)
To avoid such errors in browser --> check first if cordova is defined:
if (window.cordova)
Tribe
November 28, 2015, 11:34am
#3
Thanks @bengtler - I’ve now wrapped that initial if statement as follows.
if (window.cordova) {
if (cordova.platformId == "browser") {
var exec = require("cordova/exec"); //line 181
}
}
That error is now resolved but then it comes to line 181 where it errors as
require is not defined
As I mentioned, even when I build the app on device (even in Xcode emulator), the Facebook login button does not work. I can’t seem to find what the issue is.
I have run “ionic state reset” several times and still no luck.
ehhhm you are trying to load node-module in your app … this will not work at all.
Tribe
November 28, 2015, 12:03pm
#5
Ah! I’ve only added the index.js (from the Facebook plugin) in to index.html based on someone else having success with it.
Removing still gives similar issues
I removed
<script src="lib/facebook-connect-plugin/index.js"></script>
Now the only error I get (on clicking Fb login) is:
facebookConnectPlugin is not defined
at Scope.$scope.facebookSignIn (http://10.1.1.4:8100/js/controllers.js:63:7 )
Tribe
November 28, 2015, 12:38pm
#6
@bengtler All resolved now
The cause was actually these two push packages;
"phonegap-plugin-push",
"cordova-plugin-push-notification"
Did an ionic state restore and now it’s back to working. Thanks for helping out