我在一个控制器上得到了一个数据(来自服务器的令牌),并希望在Angular js中的另一个控制器中使用该数据(令牌)

I got a data(token from server) on one controller, and want to use that data(token) in another controller in Angular js?

本文关键字:令牌 数据 控制器 一个 js 希望 Angular 另一个 服务器      更新时间:2023-09-26

我正在名为"adminSearchCtrl"的控制器中以令牌的形式从服务器获取数据,并希望将该令牌用于另一个名为"adminViewCtrl"的控件。如何做到这一点??

adminSearchCtrl.js

$scope.getUserDetails = function(selectedUser){
        console.log(selectedUser, userToken.token);
        AdminSearchService.getUserDetails(selectedUser, userToken.token)
        .then(function(response){
            $scope.switchUserToken = response.switchToken.token;
        })
        .catch(function(err){
            $scope.error = err.message;
        });
    }

我想把这个令牌"$scope.switchUserToken"用在另一个名为"adminViewCtrl"的控制器上,我也把它放在了$scope上,但当我把"$scope.switchUserToken"用在我的"adminViewCtrl"上时,它给出了未定义的值。有人能帮我吗??

每个控制器都有自己的$scope,您不能从一个控制器访问到另一个控制器,并且您不应该

解决方案是创建一个服务来在控制器之间共享这些数据。这里有一个带有示例的JSBin。