0
私はいくつかのデータを受信した後にイベントを呼び出す認証のコードを持っていますが、 "$ scope。$ emit"は "User.me()"のコールバックでは動作しません。
誰でも私を説明できますか?
$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 //
});
};
は、私が試してみてください。今すぐ
$scope.$emit('event'); // but, not work
$scope.$broadcast('event'); // but, not work
$rootScope.$emit('event'); // but, not work
$rootScope.$broadcast('event'); // work!!!!
、 "なぜ" 私は知りませんの?
実際にコールバックが呼び出されていますか?成功とエラーの両方のコールバックを使用してログ/デバッグを配置しようとしましたか? – CaringDev
ログインは成功し、 "User.me()"も成功しています。ログインコールバックは "$ scope。$ emit"を期待通りに実行しますが、 "User.me()"のコールバックは "$ scope。$ emit"をディスパッチしません。 –
愚かな質問かもしれませんが、どこでコールバック関数を呼び出しますか? – olysachok