$ scope。$ emit在回调中不起作用?

时间:2016-03-21 23:50:09

标签: angularjs callback angularjs-scope emit

我有一个代码用于身份验证,我希望在收到一些数据后调用一个事件,但是" $ 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!!!!

现在,"为什么"我不知道?

1 个答案:

答案 0 :(得分:0)

改为使用$scope.$broadcast