title: angularjs maintain the scope variable across routes
body: <p>How do I maintain the model across routes. for eg I have a list of profiles loaded onto the home page. The home page also contains a "load more" action to load more profiles, basically pushing data to the model. On clicking of a specific profile, the detail-view for that profile is activated via routes. The detail view has a back button which redirects the user back to the home page. On routing back to the home page data(profiles) loaded by the "load more" action is lost. I need to maintain the model with the "load more" prepended data</p>
  
  <p>Below is the code used</p>
  
  <pre><code>/* Controllers */
  var profileControllers = angular.module('profileControllers', ['profileServices'])
  
  
  profileControllers.controller('profileListCtrl', ['$scope','$location', 'Profile','$http',
    function($scope,$location, Profile,$http) {
      $scope.Profiles = Profile.query(function(){
  
          if($scope.Profiles.length &lt; 3) {
                      $('#load_more_main_page').hide();
                  }
          });
      $scope.orderProp = 'popular';
      $scope.response=[];
  
      //LOADMORE
      $scope.loadmore=function()
      {
  
          $http.get('profiles/profiles.php?profile_index='+$('#item-list .sub-item').length).success(function(response){
              if(response) {
                  var reponseLength = response.length;
                  if(reponseLength &gt; 1) {
                      $.each(response,function(index,item) {
  
  
                           $scope.Profiles.push({
                                              UID: response[index].UID,
                                              id: response[index].id,
                                              popular: response[index].popular,
                                              imageUrl: response[index].imageUrl,
                                              name: response[index].name,
                                              tags: response[index].tags,
                                              category: response[index].category
                                          });
  
                          });
                  }
                  if(reponseLength &lt; 3) {
                      $('#load_more_main_page').hide();
                  }
              }
  
          });
  
  
      }
  
    }]);
  
  
  
  
  
    /* App Module */
  
  var profileApp = angular.module('profileApp', [
    'ngRoute',
    'profileControllers',
    'profileServices',
  ]);
  
  
  
  profileApp.config(['$routeProvider',
    function($routeProvider) {
      $routeProvider.
        when('/profiles', {
          templateUrl: 'partials/profile-list.html',
          controller: 'profileListCtrl',
          resolve: {
              deps: function ($q, $rootScope) {
                  var deferred = $q.defer();
                  var dependencies = ['js/sort.js'];
                  $script(dependencies, function () {
                      $rootScope.$apply(function () {
                          deferred.resolve();
                      });
                  });
                  return deferred.promise;
              }
          }
        }).
        when('/profiles/:profileId', {
          templateUrl: 'partials/profile-detail.html',
          controller: 'profileDetailCtrl',
  
        }).
        when('/profiles/cat/:category', {
          templateUrl: 'partials/profile-list-category.html',
          controller: 'profileCategoryListCtrl',
  
        }).
        when('/create/', {
          templateUrl: 'partials/profile-create.html',
          controller: 'profileCreateCtrl',
          css: ['css/createprofile.css','css/jquery-ui-1.10.4.custom.min.css','css/spectrum.css'],
  
        }).
        otherwise({
          redirectTo: '/profiles'
        });
    }]);
  </code></pre>