Laureant
Laureant

Reputation: 1019

AngularJS execute code when changing pages that use same controller

I have a PhoneGap app, that has multiple html pages.

I use one controller, called AppController, that loads the data for the startup screen and default pages.

I added a new page to the navigation bar, which, when clicked & opened should load up data from the server with a php call, so it should only make a php call, when the page is shown.

This page uses the same controller as the rest of the app.

I am really new to AngularJS, so I might've programmed it in a bad way, but the rest of the data for the home page is loaded in the appController like this

myApp.controller('AppController', function ($scope, $timeout, sharedProperties) {
    $scope.items= {};
    $scope.items[item1] = {....} //LOADING UP the items collection
}

How can I hook up an "onload" event or something, that would only fire when the page is shown?

Upvotes: 0

Views: 79

Answers (2)

debugmode
debugmode

Reputation: 946

How about using ng-init() directive on your next page ?

Upvotes: 0

daniel
daniel

Reputation: 1162

There are so many ways you could do that, one of them:

// inside your controller
angular.element(document).ready(function () {

// your code 

});

another one:

<div ng-controller="myCtrl" ng-init="someinitfunc()"></div>

Upvotes: 1

Related Questions