In Ionic your controller load when your app start. If you want to do something every time when user go to state in which you use your controller you need listed $ionicView.enter event.
But in your case you need to call some code every time when user scroll your page to bottom. As I see in your code you use ion-infinite-scroll directive. It call method loadMore() every time when the distance between bottom of your content and bottom of the page is smaller then 1%. So you need add the definition of loadMore() method in your controller. And don’t forget to stop your spinner animation by broadcast scroll.infiniteScrollComplete.
For example:
$scope.loadMore = function () {
$http.get("data/services/banks.json")
.success(function (response) {
$scope.banks = response;
$scope.$broadcast ('scroll.infiniteScrollComplete'); // need to stop spinner
});
}
But every time when loadMore() function will calls your banks array will overwritten by data from your json. If you want add new items and don’t overwrite your current array you need write something like this in our controller: