Ich versuche, Google-Authentifizierungsbibliothek mit Versprechen zu laden, aber ich scheitere, wenn ich versuche, gapi.auth2.getAuthInstance() aufzurufen und es in Versprechen zurückzugeben;GoogleAuth-Bibliothek wird mit Versprechen geladen
Hier ist, wie ich das tue:
var loadPlatform = function ($q) {
var deferred = $q.defer(),
platform = document.createElement('script');
platform.src ='https://apis.google.com/js/platform.js';
platform.type = 'text/javascript';
platform.async = true;
platform.defer = true;
platform.onload = deferred.resolve;
platform.onerror = deferred.reject;
document.body.appendChild(platform);
return deferred.promise;
};
//I return this from other function
return loadPlatform($q)
.then(function() {
var deferred = $q.defer();
gapi.load('auth2', function() {
deferred.resolve(gapi.auth2);
});
return deferred.promise;
})
.then(function (auth2) {
//This function retuns Promise
//https://developers.google.com/identity/sign-in/web/reference#gapiauth2initparams
return auth2.init(params);
})
.then(function (GoogleAuth) {
//Here I should have solved GoogleAuth object
});
Alles funktioniert, bis ich wieder auth2.init (params) dann Browser einfriert. Was ist hier los?