AngularJS выполняет метод контроллера при перенаправлении страницы

Я создаю приложение с помощью Cordova/Phonegap, Ionic и AngularJS. Я хочу выполнить внутренний метод из контроллера снаружи. Этот внутренний метод (secondMethod()) должен выполняться, когда я перенаправляюсь на другой html (secondPage.html). Мой метод запускает SQLite-запрос, чтобы получить некоторые данные и должен отобразить их на новой странице. Я попробовал это с функцией загрузки, но мой console.log говорит, что не может найти мою функцию. Как я могу это сделать?

app.js

    ionicApp.controller("FirstController", function($scope) {

       $scope.firstMethod = function() {
          window.location.replace("secondPage.html");
       }

    }

    ionicApp.controller("SecondController", function($scope) {

       $scope.secondMethod = function() {
          // do some code
       }

       $scope.otherMethod = function() {
          // some other code
       }

    }

вторая страница.html

    // html and head
    <body>
       <ion-content ng-controller="SecondController">
          <label id="text_label">Text</label>
          <button class="button" ng-click="otherFunction()">Button</button>
       </ion-content> 
       <script>
          window.onload=secondMethod();
       </script>
     </body>

Заранее спасибо.


person quantatheist    schedule 19.03.2015    source источник


Ответы (1)


через использование прослушивателя $ionicView.enter для выполнения вашей функции? Вы также можете попробовать использовать функцию resolve из ui-router.

person Aaron Saunders    schedule 22.03.2015
comment
Спасибо за ваш ответ. Но как мне использовать $ionicView.enter? Я понял, что его нужно использовать в $scope.$on('$ionicView.enter', function(...)); работает, но ничего не делает. Можете ли вы также привести пример с функцией разрешения? - person quantatheist; 26.03.2015