簡體   English   中英

導航到下一個視圖時未獲取存儲的數據

[英]Not getting stored data when navigating to next view

我對此事感到非常困擾,我無法存儲下一個視圖的用戶信息。 這是我的工廠:

app.factory("currentUser", currentUser);
function currentUser() {
    var profile = {
        userId: "",
        firstName: "",
        lastName: "",
        userEmailId: "",
        userAccessToken: ""
    };

    var setProfile = function (data) {
        profile.userId = "";
        profile.firstName = data.userDetails.frstName;
        profile.lastName = data.userDetails.lastName;
        profile.userEmailId = data.Email;
        profile.userAccessToken = data.userDetails.accessCode;
    }

    var getProfile = function () {
        return profile;
    }

    return {
        setProfile: setProfile,
        getProfile: getProfile
    }
}

我使用以下函數設置數據:

currentUser.setProfile(data);

但是當我在另一個控制器中嘗試獲取數據時,我得到的是空白對象:

currentUser.getProfile();

這是我的路線

  angular.module("angularModule", ["ngAnimate", "ui.router"])
             .config(function ($stateProvider, $urlRouterProvider, $locationProvider) {

                 // catch all route
                 // send users to the form page 
                 $locationProvider.html5Mode(true);
                 $stateProvider.state('Register', {
                       url: '/Register',
                       templateUrl: 'Templates/Registration.html',
                       controller: "Registration"
                   })

請幫助我提供解決方案,我最早需要解決方案。

var app = angular.module("MyApp", []);
app.factory("myService", function() {
  var profile = {
    userId: "",
    firstName: "",
    lastName: "",
    userEmailId: "",
    userAccessToken: ""
  };
  profile.setProfile = function(userDetails) {
    profile.userId = "";
    profile.firstName = userDetails.frstName;
    profile.lastName = userDetails.lastName;
    profile.userEmailId = userDetails.userEmailId;
    profile.userAccessToken = userDetails.accessCode;
  }
  profile.getProfile = function() {
    return profile;
  }
  return profile;
});
app.controller("ctrl1", ["$scope", "myService", function($scope, myService) {
  $scope.profile = {
    userId: "1233",
    firstName: "JOHN",
    lastName: "DOE",
    userEmailId: "",
    userAccessToken: "314wdw"
  };
  myService.setProfile($scope.profile);
  $scope.valueA = myService.getProfile();
}]);
app.controller("ctrl2", ["$scope", "myService", function($scope, myService) {
  $scope.valueB = myService.getProfile();
}]);

演示

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM