1

我习惯于从 a 成功登录后$cookies存储,然后在我的. 在整个过程中,应用程序的状态没有改变,页面也没有重新加载。现在,当我在此过程中进行控制台登录时,它会显示,但是当我刷新页面时,它会完美显示。userIdmodalInstanceControlleruserIdhomepageControlleruserIdundefineduserId

我在成功登录时预先填写表格,所以我不想重新加载我的状态。任何解决方案,以便我可以实现这一目标。

代码片段:

modalInstanceController

 $scope.login = function() {
    utilities.login()
    .success(function(response) {
      $cookies.put('user_id', response.message.user_id);
    });
    $modalInstance.dismiss('cancel');
  };

homepageController

$scope.userId = $cookies.get('user_id');

userId仅在页面刷新时显示。

4

1 回答 1

0

从服务器接收到信息后,您的代码中没有迹象表明您正在设置 userId。homepageController 只会在加载时读取 cookie

 $scope.login = function() {
    utilities.login()
    .success(function(response) {
      $cookies.put('user_id', response.message.user_id);
      // add next line
      $scope.userId = $cookies.get('user_id');
    });
    $modalInstance.dismiss('cancel');
 };
于 2015-11-02T07:13:47.707 回答