Well, when you cache the view (by default, this is true), the controller loads only for the first time and during subsequent navigation it will attach and separate the area. Cacheing helps with single page applications. If you do not want to disable caching, you use events with an ionic representation, for example (enter, leave, load, etc.).
$scope.$on('$ionicView.enter', function () {
source share