Ich habe einen Code zur Authentifizierung, wo ich ein Ereignis nach dem Empfang einiger Daten aufrufen möchte, aber "$ scope. $ Emit" funktioniert nicht im Rückruf von "User.me()" und ich verstehe nicht.
Jeder kann mir erklären?
$scope.login = function() {
OAuth.getAccessToken($scope.user).then(function() {
$scope.$emit('event:here:work');
User.me({}, {}, function (data) {
$scope.$emit('event:here:NOT-WORK');
});
$scope.$emit('event:here:work');
}, function (response) {
// error //
});
};
Ich versuche:
$scope.$emit('event'); // but, not work
$scope.$broadcast('event'); // but, not work
$rootScope.$emit('event'); // but, not work
$rootScope.$broadcast('event'); // work!!!!
Nun, das "Warum" ich weiß nicht?
Wird der Callback tatsächlich aufgerufen? Haben Sie versucht, Logging/Debugging sowohl mit Erfolgs- als auch mit Fehler-Callback durchzuführen? – CaringDev
Die Anmeldung ist erfolgreich und "User.me()" auch. Der Login-Callback führt "$ scope. $ Emit" wie erwartet aus, aber der Callback von "User.me()" sendet nicht "$ scope. $ Emit". –
Kann eine dumme Frage sein, aber wo rufen Sie die Callback-Funktion? – olysachok