AngularJS - Ionic : execute code in controller when coming back to it

I'm new in AngularJS Community and I'm developping my first app with this Framework.

I created a new controller with this code :

.controller('AccountCtrl', function($scope, $location) {
alert('test');
})

And my route :

.state('app.account', {
    url: "/account",
    views: {
      'menuContent': {
        templateUrl: "templates/account.html",
        controller: 'AccountCtrl'
      }
    }
  })

The alert popup is shown the first time I access to the controller. But, if I change URL and I come back to AccountCtrl (with a classic html a), the alert popup is not shown again.

Could somebody explain to me why ?

Thanx for your help !

to reload Controller each time in ui router, use reload: true option on the .state

$stateProvider
.state('app.account', {
      url: "/account",
      reload: true //forcefully reload route and load controller again
})

In Ionic Framework views and controllers will be cached by default. You ma add a listener to the views scope to receive a notification when the view is re-active again. For more information see: http://ionicframework.com/docs/api/directive/ionView/ and http://ionicframework.com/docs/api/directive/ionNavView/

You may also disable the cache on a view <ion-view cache-view="false">

.controller('AccountCtrl', function($scope, $location) {
    $scope.$on('$ionicView.beforeEnter', function () {
            // update campaigns everytime the view becomes active
            // (on first time added to DOM and after the view becomes active after cached
        alert('test');
    });
})`